C.strcpy(sample.z,“abcd”); D.strcmp(sample.z,“abcd”)
10. 假设int a=2;float b=3;double c=3.14;则表达式 a*b+c的类型为__________。 A.float B.char C.double D.int 11. 正确判断字符串a和b相等的表达式为_____________.
A.a == b B. a=b C.strcpy(a,b) D.strcmp(a,b) == 0 12. 若x[][4]={1,2,3,4,5,6,7};,则数组x是一个________的二维数组。
A.行列无确定值 B.4行7列 C.2行4列 D.4行2列 13. 以下能正确定义整型变量a, b 和 c 并为其赋初值5的语句是_________.
A.int a=b=c=5; B.int a,b,c=5; C.int a=5,b=5,c=5; D.int a=5;b=5;c=5;
14. 与y=a﹥b?a:b语句等价的程序段是____________。
A.if(a﹥b) B. if(a﹥b) C. if(a﹥b) D.if(a﹥b) { y=a; { y=b; { y=a; { y=b;
} } } }
else else y=b; y=a; { y=b; { y=a;
} }
15. 若用数组名做函数调用的实参,专递给形参的是数组的__________。
A.首地址 B.第一个元素的值 C.全部元素的值 D.元素的个数 16. 以下程序段__________。 x=-1;
do{ x=x * x; } while(lx);
A.循环执行1次 B.循环执行2次 C.循环执行无限次 D.有语法错 17. 以下关于C语言变量的叙述,错误的是___________。
A.变量名必须由字母或下划线开头 B.程序中的变量必须在使用之前定义 C.不同基本类型的变量之间可以混合运算 D.在定义变量的同时不能对变量赋初值 18. 下面的程序执行后的输出结果为________。 #inolude
int m=2,n=3;
printf(“%d\\n”,F(m+3,n+2); }
A.25 B.17 C.13 D.10 19. 语句if(!e)中e等于__________时条件为真. A. 0 B. 1 C. 非0 D.2
20. 在C语言程序中,变量所分配的内存空间大小_________。
A.均为一个字节 B.由用户自己定义 C.由变量的类型决定 D.是任意的 第二部分: 简单程序
21. 以下程序的运行结果是_________。
31
#include
int x=5,t; t=M*x++;
prinf(“x=%d,t=%d\\n”,x,t); }
A. x=5,t=18 B. x=5,t=15 C.x=6,t=15 D.x=6,t=18
22. 以下程序的运行结果是_________。 #include
int a=9,b=10;
if (a==b)
{ printf(“#####”); } else
{ printf(“*****”); } if(a=b)
{ peintf(“$$$$$﹨n”); } }
A. ##### B. #####$$$$$ C. ***** 23. 以下程序的运行结果是_____________。 #include
int x=2,y=0,a=0,b=0; while(x>0) { switch(y)
{ case 0: a++;break; case 1: b++;break; case 2: a++;b++;} y=x--; }
printf(“a=%d.b=%d\\n”,a,b); }
A. a=0,b=0 B. a=1,b=0 C. a=1,b=1 24. 以下程序的运行结果是______。 #include
{ int x,a=10,b=20,c=5; if (a
32
D. *****$$$$$ D. a=2,b=1
{ x=-1; if(b!=10) { if (!c) { x=1; } else
{ x=2; } } }
A. -1 B. 1 C. 2 D.不确定值 25. 以下程序的运行结果是___________。 #include
{ int x,y,k=0;
for(x=0,y=5;x<=y;x++,y--) { k++; } printf(“%d\\n”,k); }
A. 2 B. 3 C. 4 D. 5 26. 以下程序的运行结果是___________。 #include
{ static int c=3;
return (a+2*c++);} main() { int k;
for (k=1;k<3;k++)
{ printf(“%d\\t”,f(k));} }
A. 7 10 B. 7 8 C. 9 10 D.8 9 27. 以下程序的运行结果是__________。 #include
{ int x,y,sum=0;
int array[4][4]={ {10,9,3,8},{4,7,12,5},{11,15,2,9},{2,4,6,8} }; for(x=0;x<4;x++) for(y=0;y<4;y++)
if(array[x][y]%5==0)
{ sum+=array[x][y]; } printf(“sum=%d\\n”,sum); }
A. sum=5 B. sum=10 C. sum=15 D.sum=30 28. 以下程序的运行结果是_________。 #include
33
long fun(int n) { if (n>2)
return (n*fun(n-1); else
return 2; } main()
{ printf(“%d”,fun(3));}
A. 8 B. 6 C. 4 D. 2 29. 以下程序的运行结果是__________。 #include
{ char *str[6]={“abc”,”def”,”ghi”,”jkl”,”mno”}; char **p; int k; p=str;
for (k=1;k<4;k+=2)
{ printf(”%s”,p[k]); } printf(“\\n”); }
A.abcghi B.defjkl C.defmno 30. 以下程序的运行结果是_________。
#include
k=a;a=b;b=k; }
main()
{ int a=3,b=4;
fun(&a,&b);
printf(“%d,%d\\n”,a,b); }
A. 3,4 B 4,3 C 3,3 D 4,4 31.以下程序的运行结果是________。
#include
printf(“%d\\t”,x);} void f2() { x-=5;
printf(“%d\\t”,x);} main()
34
D.abcjkl
{
int x=3; f1();
printf(“%d\\t”,x); f2();
}
A. 3 5 10 B. 3 5 15 C. 15 3 10 D. 15 10 3 32.以下程序的运行结果是________。
#include
{ struct example
{ int a,b;
struct
{ int x,y; } in; }e,*p; p=&e; p->a=10; p->b=20;
p->in.x=e.a+e.b; p->in.y=e.a*e.b;
printf(“%d,%d”,e.in.x,e.in.y); }
A. 10,20 B.200,30 C.30,20 D.30,200
第二卷
说明(1)第二卷均为填空题,在阅读和原题程序的基础上,在第二卷答题卡上编号对应的栏目中填入适当的字符或语句,以构成一个正确的C语言程序。 (2)每空栏3分,10个空栏共30分。
试题一 下面程序的功能是从键盘输入的10个整数中,找出第一个能被7整除的数。若找到, 打印此数后退出循环;若未找到,打印“not exist”。请填空。 #include
{ int a,i;
for (i=1;i <= 10;i++) { scanf(“%d”,&a); if (____1____) a%7= =0 { printf(“&d”,a);_____2____;} break }
if (i>10) printf(“not exist\\n”); }
试题二 以下程序的功能是:从键盘上输入若干个学生成绩,统计计算出平均成绩,用输入负数结束输入.请填空.
#include
35