西北工业大学2020春机考《C语言程序设计》作业1单选题1.下面程序的输出结果是()。
main() { int a[10]={1,2,3,4,5,6,7,8,9,10,*p=a;A.3B.4C.1D.2答案:VX:34637870获取参考答案2.以下描述错误的是()。
A.break 语句不能用于循环语句和 switch 语句外的任何其他语句B.在 switch 语句中使用 break 语句或 continue 语句的作用相同C.在循环语句中使用 continue 语句是为了结束本次循环,而不是终止整个循环D.在循环语句中使用 break 语句是为了使流程跳出循环体,提前结束循环答案:VX:34637870获取参考答案3.下面程序的输出结果是()。
main() { int x=10; x+=(x=8); printf("%d\n",x); }A.10B.8C.18D.16答案:VX:34637870获取参考答案4.定义 int i=1; 则执行语句 while(i++<5); 后,i 的值为()。
A.3B.4C.5D.6答案:VX:34637870获取参考答案5.若有语句 scanf("%d%d",&a,&b);要使变量 a,b 分别得到 10 和 20,正确的输入形式为()。
A.10 20B.10,20C.1020D.10:20答案:VX:34637870获取参考答案6.有以下定义 #include char a[10],*b=a; 不能给 a 数组输入字符串的语句是()。
A.gets(a)B.gets(a[0]);C.gets(&a[0]);D.gets(b)答案:VX:34637870获取参考答案7.当 c 的值不为 0 时,在下列选项中能够将 c 的值赋给变量 a、b 的是()。
A.c=b=a;B.(a=c)||(b=c);C.(a=c)&&(b=c);答案:VX:34637870获取参考答案8.以下描述中正确的是()。
A.由于 do-while 循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句B.do-while 循环由 do 开始,用 while 结束,在 while(表达式)后面不能写分号C.在 do-while 循环体中,是先执行一次循环,再进行判断D.do-while 循环中,根据情况可以省略 while答案:VX:34637870获取参考答案9.已知 double *p[6]; 它的含义是()。
A.p 是指向 double 类型变量的指针B.p 是 double 类型数组C.p 是指针数组D.p 是数组指针答案:VX:34637870获取参考答案10.表达式18/4*sqrt(4.0)/8 值的数据类型是()。
A.intB.floatC.doubleD.不正确答案:VX:34637870获取参考答案11.C 语言规定,在一个源程序中,main 函数的位置()。
A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后答案:VX:34637870获取参考答案12.下面各选项中,均是 C 语言合法标识符的选项组是()。
A.33 we autoB._23 me _3ewC._43 3e_ elseD.ER -DF 32答案:VX:34637870获取参考答案13.运行程序: main() { int a=1,b=2; a+=b;b=a-b;a-=b; printf("%d,%d\n",a,b); }则输出结果是()。
A.2,1B.3,1C.3,2D.1,1答案:VX:34637870获取参考答案14.以下选项中不属于字符常量的是()。
A.′C′C.′\xCC′D.′\072′答案:VX:34637870获取参考答案15.在下列结论中,只有一个是正确的,它是()。
A.递归函数中的形式参数是自动变量B.递归函数中的形式参数是外部变量C.递归函数中的形式参数是静态变量D.递归函数中的形式参数可以根据需要自己定义存储类型答案:VX:34637870获取参考答案16.对 for(表达式 1; ; 表达式 3)可理解为()。
A.for(表达式 1; 0;表达式 3)B.for(表达式 1: 1 ;表达式 3)C.for(表达式 1; 表达式 1; 表达式 3)D.for(表达式 1; 表达式 2; 表达式 3)答案:VX:34637870获取参考答案17.有如下程序 main() { int x=3; do { printf("%d",x--); }while(!x); }该程序的执行结果是()。
A.3 2 1B.2 1 0C.3D.2答案:VX:34637870获取参考答案18.以下选项中,不能作为合法常量的是()。
A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e0答案:VX:34637870获取参考答案19.设有定义:char p[]={′1′,′2′,′3′,*q=p;,以下不能计算出一个 char 型数据所占字节数的表达式是()。
A.sizeof(p)B.sizeof(char)C.sizeof(*q)D.sizeof(p[0])答案:VX:34637870获取参考答案20.假定 x 和 y 为 double 型,则表达式 x=2,y=x+3/2 的值是()。
A.3.500000B.3C.2.000000D.3.000000答案:VX:34637870获取参考答案21.以下不正确的叙述是()。
A.在 C 程序中,逗号运算符的优先级最低B.在 C 程序中,APH 和 aph 是两个不同的变量C.若 a 和 b 类型相同,在计算了赋值表达式 a=b 后 b 中的值将放入 a 中,而 b 中的值不变D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值答案:VX:34637870获取参考答案22.请选出可用作 C 语言用户标识符的是()。
A.void,define,WORDB.a3_b3,_123,IFC.FOR,--abc,CaseD.2a,Do,Sizeof答案:VX:34637870获取参考答案23.说明语句 int *(*p)(); 的含义是()。
A.p 是一个指向 int 型数组的指针B.p 是指针变量,它构成了指针数组C.p 是一个指向函数的指针,该函数的返回值是一个整型D.p 是一个指向函数的指针,该函数的返回值是一个指向整型的指针答案:VX:34637870获取参考答案24.下列不正确的字符串常量是()。
A.'ABC'B."W'"C."SDF/3"D." "答案:VX:34637870获取参考答案25.假定 w、x、y、z、m 均为整型变量,且 w=1, x=2, y=3, z=4 则执行语句:m=(w<x)?w:x;m=(m<y)?m:y;m=(m<z)?m:z;后,m 的值是()。
A.4B.3C.2D.1答案:VX:34637870获取参考答案26.设有说明语句: char a='\72';则变量 a()。
A.包含 1 个字符B.包含 2 个字符C.包含 3 个字符D.说明不合法答案:VX:34637870获取参考答案27.以下不构成无限循环的语句或语句组是()。
A.n=0;<br/>do{++n;}while(n<=0);B.n=0;<br/>while(1){n++;}C.n=10;<br/>while(n);{n--;}D.for(n=0,i=1; ;i++)n+=i;答案:VX:34637870获取参考答案28.已知 x=43,ch='A',y=0;则表达式 x=y&& ch<'B'&&!y 的值是()。
A.0B.语法错C.1D."假"答案:VX:34637870获取参考答案29.在 C 语言中,运算对象必须是整型数的运算符是()。
A.%B.\C.%和\D.**答案:VX:34637870获取参考答案30.下面程序的输出结果是()。
main() { int s,k; for(s=1,k=2;k<5;k++) s+=k; printf("%d\n",s);A.1B.9C.0D.15答案:VX:34637870获取参考答案31.在 C 语言中,变量的隐含存储类别是()。
A.autoB.staticC.externD.无存储类别答案:VX:34637870获取参考答案32.设 x、y、t 均为 int 型变量,则执行语句:x=y=2;t=++x||++y;后,y 的值为()。
A.不确定B.2C.3D.1答案:VX:34637870获取参考答案33.设 a=5, b=6, c=7, d=8, m=2,n=2, 执行(m=a>b)&&(n=c>b)后 n 的值为()。
A.1B.2C.3D.4答案:VX:34637870获取参考答案34.函数 strlen("1234\0xy")的值为()。
A.7B.8D.9答案:VX:34637870获取参考答案35.以下叙述正确的是()。
A.do-while 语句构成的循环不能用其它语句构成的循环来代替。
B.do-while 语句构成的循环只能用 break 语句退出。
C.用 do-while 语句构成的循环,在 while 后的表达式为非零时结束循环。
D.用 do-while 语句构成的循环,在 while 后的表达式为零时结束循环。
答案:VX:34637870获取参考答案判断题1.在 C 语言中,二维数组元素在内存中的存放顺序可以随意调整变化。
A.错误B.正确答案:2.一个 C 源程序文件由一个或多个函数组成,由此可见函数是一个独立的编译单位。
A.错误B.正确答案:3.把单个数组元素传递给修改该元素值的函数会使调用函数包含修改后的值。
A.错误B.正确答案:4.设有程序段"char s[ ]="program";char *p;p=s;"表示数组的第一个元素 s[0]和指针 p相等。
A.错误B.正确答案:5.凡是函数中未指明存储类别的局部变量,其隐含的存储类别为自动 auto。
A.错误B.正确答案:6.C 语言规定形参可以是常量、变量或表达式,只要与其对应的实参类型一致即可。