二级C语言程序设计期末大作业(3-4-5)
二级C语言程序设计期末大作业(3-4-5)
一、单选题
1. C 语言程序中可以对程序进行注释,注释部分必须用符号__C___括起来。
A. { 和 }
B. [ 和 ]
C. /* 和 */
D. */ 和 /*
2. 设要定义n为整型变量,定义x为浮点型变量,正确的语句是:_B____ 。
A. int n, float x,
B. int n, float x;
C. int n; float x,
D. int n; float x;
3. 设有int n; 从键盘上输入整数给变量n,正确的语句是:__D___ 。
A. scanf( n );
B. scanf( "n" );
C. scanf( "%d", n );
D. scanf( "%d", &n );
4. 程序段
int x=3, y=2;
printf("%d", x*=y+8/5);
的输出结果为__D___ 。
A. 1
B. 5
C. 7
D. 9
5. 要判断char型变量m是否是数字,可以使用表达式_____B_____。
A. 0<=m && m<=9
B. m>='0' && m<='9'
C. "0"<=m && m<="9"
D. '0'<=m <='9'
6. 执行以下代码段后,a的值为___A__。
int a=1,b=2,c=3;
if(a>b) a=b;
if(a>c) a=c;
A. 1
B. 2
C. 3
D. 不确定
7. 下面的for 语句执行时,____B___将形成无限循环。
A. for(s=j=0; j<100; j+=1) s+=j;
B. for(s=j=0; j<100; j+1) s+=j;
C. for(s=j=0; j<100; ++j) s+=j-1;
D. for(s=j=0; j<100; j++) s+= j;
8. 循环语句中,break的作用是____B___。
A. 终止程序运行
B. 结束本次循环
C. 从本循环体内跳出
D. 跳出子函数
9. 以下正确的语句是______D____。
A. int a[1][4] = {1,2,3,4,5};
B. float x[3][ ] = {{1},{2},{3}};
C. long b[2][3] = {{1},{1,2},{1,2,3}};
D. double y[ ][3] = {0};
10. 执行以下程序段后,m的值是__C___。
int a[]={2,1,3,5,4};
int m=10,k,*ptr=a;
for(k=0;k<5;k++)
m += *(ptr+k);
A. 23
B. 24
C. 25
D. 26
11. 若有数组定义并初始化语句:char a1[]={’p’,’r’,’o’} ; char a2[]=〝pro〞 ; 则下列正确的说法是____D______。
A. a1和a2完全相同
B. a1和a2不同,a1是指针
C. a1和a2存储单元的数目相同
D. a1和a2不同,a2的存储单元的数目多
12. 若有函数调用语句:
func(rec1, rec2+rec3, (rec4, rec5));
则可以判断该函数的参数个数是___A____。
A. 3
B. 2
C. 5
D. 有语法错误
13. 若有以下定义:
struct person{
char name[9];
int age; }c[10]={"Wang",19,"Zhang",17,"Li",20,"Zhao",18},*p=&a[0];
则能打印出字母'L'的语句是__D___。
A. printf(“%c”,c[3].name);
B. printf(“%c”,c[3].name[1]);
C. printf(“%c”,c[2].name[1]);
D. printf(“%c”,c[2].name[0]);
14. 若要打开A盘根目录下user子目录下名为abc.txt的文本文件进行读、写操作,则下面符合此要求的函数调用是__B___ 。
A. fopen("A:\user\abc.txt","r");
B. fopen("A:\\user\\abc.txt","r+");
C. fopen("A:\user\abc.txt","rb");
D. fopen("A:\\user\\abc.txt","w");
15. 若建立了以下链表结构,如图6-12所示。指针p指向如图所示的结点,t为与data同类型的数据变量,则交换p所指向的结点的数据和该结点的下一个结点的数据的语句为:t=p->data; ____B