北京理工大学珠海学院
2009 ~ 2010学年第二学期《C语言程序设计(B)》期末试卷(A)
适用年级专业:2009级机械电子工程、车辆工程、机械与自动化 试卷说明:闭卷,考试时间120分钟
注意:请将答案填写在答题纸上
一、选择题(每题1分,共20分)
1. C语言程序的执行,总是起始于_____。
A.程序中的第一条可执行语句
B.main函数
C.程序中的第一个函数
D.包含文件中的第一个函数
2. C 语言程序中可以对程序进行注释,注释部分必须用符号_____括起来。
A.‘{‘ 和’}’ B.‘[‘和’]’ C.“/*”和”*/” D.“*/”和”/*”
3. 以下不能定义为用户标识符是 。
A. Main B. _0 C. _int D.sizeof
4. 在C语言中,字符型数据在内存中以 形式存放。
A.原码 B.BCD码 C.反码 D.ASCII码
5. 下列运算符中,要求运算对象必须是整数的是 。
A. / B.* C. % D.!
6. 多重if_else语句嵌套使用时,寻与else配套的if方法是 。
A. 上面最近的的if
B. 其上最近的没有其他else配对的if
C. 下面最近的if
D. 同行上的if
7. 下述表达式中, 可以正确表示x≤0或 x≥1的关系。
A.(x>=1) | | (x<=0) B.x>=1 | x<=0
C.x>=1 && x<=0 D.(x>=1) && (x<=0)
8. 有以下程序
void main()
{ char a='a',b;
printf("%c,",++a);
printf("%c\n",b=a++);
}
程序运行后的输出结果是
A. b,b B. b,c C. a,b D. a,c
9. 逗号表达式(a=3*5,a*4),a+15的值是 。
A.15 B.60 C.30 D.不确定
10. 有如下程序
void main()
{ int i,sum;
for(i=1;i<=3;sum++)
sum+=i;
printf(“%d\n”,sum);
}
该程序的执行结果是 。
A. 6 B.3 C.死循环 D. 0
11. 有如下程序段
int a=14,b=15,x;
char c=’A’;
x=(a&&b)&&(c<’B’);
执行该程序段后,x的值为( )
A. ture B. false C.0 D. 1
12. 关系表达式a≤x<b的正确描述是 。
A. a<=x<b B.x>=a&&x<b C.x>=a||x<b D.!(x<a&&x>=b)
13. C语言中规定函数的返回值的类型是由 。
A. return语句中的表达式类型所决定
B. 在定义该函数时所指定的函数类型所决定
C. 调用该函数时系统临时决定
D. 调用该函数时的主调用函数类型所决定
14. 以下程序的输出结果是 。
void main( )
{ int x=11,y=11;
printf("%d,%d\n",x--,--y);
}
A. 11,11 B. 10,10 C. 10,11 D. 11,10
15. 下列程序的输出结果是________。
void main()
{
int a=0,b=0,c=0;
if(++a>0||++b>0)
++c;
printf("a=%d,b=%d,c=%d",a,b,c);
}
A. a=0, b=0, c=0 B. a=l, b=l, c=1
C. a=l, b=0, c=1 D. a=0, b=1, c=1
16. 有以下函数定义: void fun(int n, double x) { …… } 若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句
是 。
A. fun(int y,double m); B. k=fun(10,12.5);
C. fun(x,n); D. void fun(n,x);
17. 已定义c为字符型变量,则下列语句中正确的是 。
A. c='97'; B. c="97"; C. c=97; D. c="a";
18. 以下能正确定义一维数组的选项是 。
A. int num[]; B. #define N 100 int num[N];
C. int num[0..100]; D. int N=100; int num[N];
19.以下正确的函数声明形式是 。
A. double fun(int x, int y) B. double fun(int x; int y)
C. double fun(int x, int y); D. double fun(int x, y)
20. 以下有关switch语句的正确说法是________。
A.break语句是语句中必须的一部分
B.在switch 语句中可以根据需要使用或不使用break语句
C.break语句在switch 语句中不可以使用
D.在switch 语句中的每一个case都要用break语句
二、填空题(每空1分,共10分)
1. 在C语言中,基本的数据类型主要有 、 、 三种。
2. C语言中用于格式化输出的函数是 。
3. 当一个函数返回值类型缺省的时候,则该函数返回值类型为 类型。
4. 定义一个整型一维数组array,数组长度为5,且初始化列表为{2,4,6},请写出初始化数组语句 。
5. C语言中用0表示假,用 表示真。
6. 设有数组定义char array [ ]="China";则数组array所占的空间为 字节。
7. 下面程序的功能是:计算1到10(包括10)的奇数之和及偶数之和,请填空。
#include<stdio.h>
void main( )
{ int a, b, c, i;
a=0;
c=0;
for(i=0;i<=10;i+=2)
{ a+=i;
______ _;
c+=b;
}
printf("偶数之和=%d\n",a);
printf("奇数之和=%d\n", );
}
三、程序阅读题(每题4分,共20分)
1. 写出下面程序段的输出结果。
#include<stdio.h>
void main()
{
int x=10,y;
x/=2;
y=x++%2;
printf("x=%d,y=%d\n",x,y);
}
程序运行结果是 。
2.写出下面程序段的输出结果。
#include<stdio.h>
void main()
{
int i;
for(i=0;i<=3;i++)
{ switch(i)
{
case 1:printf("%d",i+2);break;
case 2:printf("%d",i*i);break;
default:printf("%d",i+1);
}
}
}
程序运行结果是 。
3.写出下面程序段的输出结果。
#include<stdio.h>
void main()
{
int k;
for(k=1; k<5; k++)
{
if(k%2)
printf("*");
else
printf("#");
}
}
printf输出格式 同行程序运行结果是 。
4.执行程序之后,输入2.5↙3.5↙3.0,下面程序段的输出结果是 。
(↙表示回车)
#include<stdio.h>
void main()
{
float a[4]={1};
int i;
for(i=1;i<=3;i++)
scanf("%f",&a[i]);
for(i=1;i<=3;i++)
a[0]+=a[i];
printf("%f",a[0]);
}
5.写出下面程序段的输出结果。
#include<stdio.h>
int d=1;
void fun(int p)
{
int d=5;
d+=p++;
printf("%d",d);
}
void main()
{
int a=3;
fun(a);
d+=a++;
printf("%d\n",d);
}
程序运行结果是 。
四、简答题(每题5分,共20分)
1. 在VC++ 6.0环境下编写并运行C语言程序要经历哪几个步骤
2.C语言的基本程序控制结构有哪几种?
3.简述"s"与 's'的区别。
4.C语言中函数调用时参数传递方式的有哪几种?分别简述他们的传递方式。
五、编程题(第一题8分,第二题10分,第三题12分,共30分)
1.从键盘上输入50个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论