郑州大学C语言测试
C语言在线测试
第一
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
、单项选择题(每题1分,5道题共5分)
1、若int a,5,b,6,c,7,d,8,m,2,n,2; 则逻辑表达式(m,a,b)&&(n,c,d)运算后,n的值为:
A、0 B、1
C、2 D、3
2、以下程序的输出结果是: main( ) { int a,b; for (a,1,b,1;a,,100;a,a+1) { if (b,,10)
break; if (b,3,,1) { b,b+3; continue; } } printf(“,d\n”,a); }
A、101 B、6
C、5 D、4
3、下列运算符中,优先级最高的是( )。
A、+ B、>
C、&& D、=
4、要表达数学关系式“x?y?z”,应选用的C语言表达式为( )。
A、( x ,, y ) and ( y ,, z ) B、( x ,, y ,, z )
C、( x ,, y ) && ( y ,, z ) D、( x ,, y ) || ( y ,, z )
5、表达式10,,9的值是( )。
A、true B、2
C、0 D、1
第二题、多项选择题(每题2分,5道题共10分)
1、以下正确的描述是:
A、break语句不能用于循环语句和switch语句外的任何其它语句
B、在switch语句中使用break语句将结束该语句
C、在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环
D、在循环语句中使用break语句是为了跳出循环体,提前结束循环
2、若有定义float w,1; int a,1, b,0; ,则不合法的switch语句是:
A、switch(w) { case 1.0: printf("*\n"); case 2.0: printf("**\n"); }
B、switch(a); { case 1 printf("*\n"); case 2 printf("**\n"); }
C、switch(b) { case 1: printf("*\n"); default: printf("\n");}
D、switch(a+b); { case 1: printf("*\n"); default: printf("\n"); }
3、下列四条语句中,没有语法错误的语句是( )。
A、if(a,b)m,a;
B、if(a,b,a)m,b;
C、if((a,b),,0)m,a;
D、if((a,b),,0)m,a;
4、当c的值不为0时,则在下列选项中,能正确将c的值赋给变量a、b的是( )。
A、b,a , c;
B、(a,c)‖(b,c) ;
C、(a,c) &&(b,c);
D、a&&(b,c);
5、下列说法中正确的是()。
A、for循环完全可以用while循环替代。
B、while循环完全可以用do{}while循环替代。
C、while循环完全可以用for循环替代。
D、do{}while循环完全可以用while循环替代。
E、do{}while循环和while循环均完全可以用for循环替代。
第三题、判断题(每题1分,5道题共5分)
1、若有程序段int k,0; while(k,1) k,k+1;,则while循环执行的次数是无限次。
正确 错误
2、当型循环的循环体可能一次也不执行,直到型循环则至少执行一次。
正确 错误
3、for循环的第二表达式省略,将会导致死循环。
正确 错误
4、for循环的第三表达式可以放到循环体语句后面执行。
正确 错误
5、循环语句中break和continue可以有条件地替换。
正确 错误
第10章
测试结果如下:
, 1.1 [单选] [对] 对于char p[],"ABC\0ABCD\0ABCDE"; ,输出结果中能看到字符
D的是:
, 1.2 [单选] [对] 下列语句中,正确的语句定义是( )。
, 1.3 [单选] [对] 若有定义int a[10]; ,则对数组a的引用正确的是( )。 , 1.4 [单选] [对] 若有int a[][3],{{1,2},{3,4}}; ,则a[1][2]的值是( )。 , 1.5 [单选] [对] 若有int a[][3],{1,2,3,4,5,6,7,8,9,10,11,12};,则数组a
的第1维的长度为( )。
, 2.1 [多选] [对] 下列对C语言字符数组的描述中,正确的描述是: , 2.2 [多选] [对] 以下对C语言函数的有关描述中,不正确的描述是: , 2.3 [多选] [对] 根据定义: struct person{char name[9];int age;}; struct
person c[10],{"John",17,"Paul",19,"Mary",18,"Adam",16}; 能打印出字母M
的语句是:
, 2.4 [多选] [对] 若形参是简单变量形式,则对应的实参可以是: , 2.5 [多选] [对] 下列描述中,合法的数组定义是( )。
, 3.1 [判断] [对] 函数中的形参和调用时的实参都是变量时,传递方式为值传递。 , 3.2 [判断] [对] 若有func((v1,v2),(v3,v4,v5),v6)调用,说明函数func有6个
形参。
, 3.3 [判断] [对] 在说明一个结构体变量时系统分配给它的存储空间是该结构体中
所有成员所需存储空间的总和。
, 3.4 [判断] [对] C语言中二维数组的存储是一维的线性存储。 , 3.5 [判断] [对] 在定义数组时的常量表达式中可以包含变量。
Bbdac abc abc cd acd abcd VXVVX
测试结果如下:
, 1.1 [单选] [对] 若执行fopen函数时发生错误,则函数的返回值是() , 1.2 [单选] [对] fp 是文件指针,str 是一个字符串,n是一个整数,向文件中输
出数据的正确格式是:
, 1.3 [单选] [对] 在C语句中,&后跟指针变量名,表示该指针变量的(( )。 , 1.4 [单选] [对] 执行“char a[10],{"abcd"},*p,a;”后,*(p+4)的值是( )。 , 1.5 [单选] [对] 若有int a,3,*pa; float f,4.5,*pf,&f;,则下列表述中,
错误的是 ( )。
, 2.1 [多选] [对] C语言中的文件分类是:
, 2.2 [多选] [对] 下列关于C语言数据文件的叙述中,不正确的叙述是: , 2.3 [多选] [对] 已有char s[10][10],{0};int i,10;。在下列表达式中,没有
意义的表达式是:
, 2.4 [多选] [对] 若有int x,3,*px; float y,3,*py;,则正确的赋值表达式是
( )。
, 2.5 [多选] [对] 设有定义语句“int x,10, *p,&x”,则表达式的值为10的有
( )。
, 3.1 [判断] [对] 单目运算符“&”是指针运算符。
, 3.2 [判断] [对] 函数调用语句fseek(fp,-10L,2)的含义是将文件位置指针从当
前位置向文件头方向移10个字节。
, 3.3 [判断] [对] 若fp是指向某文件的指针,若没到该文件的末尾,则函数feof(f
p)的返回值是EOF。
, 3.4 [判断] [对] *&p与p一样。
, 3.5 [判断] [对] 共用体变量的存储单元长度是最长分量的存储长度。
Bbcbb ad abc abc ad bcde XXXVV