当前位置:文档之家› 2019-北京理工大学-成教-《C语言程序设计》期末测试卷 (1)

2019-北京理工大学-成教-《C语言程序设计》期末测试卷 (1)

[试题分类]:C语言程序设计1.下列关于C语言中main函数位置的叙述中,正确的是A. 必须在程序的最后B. 必须在程序的开始处C. 可以在程序中的任意位置D. 必须在系统调用的库函数后面答案:C题型:单选题知识点:第2章 C语言概述难度:12.下列选项中,不能作为C语言标识符是A. _xB. intC. a_1D. ab1exe答案:B题型:单选题知识点:第2章 C语言概述难度:13.若有定义“int i; float f; double d;”,则表达式“10+d+i*f”的数据类型为A. intB. floatC. doubleD. 不确定答案:C题型:单选题知识点:第3章数据类型与运算规则难度:14.判断char型变量c是否为小写字母的正确表达式为A. 'a'<=c<='z'B. (c>=a)&&(c<=z)C. ('a'>=c)('z'<=c)D. (c>='a')&&(c<='z')答案:D题型:单选题知识点:第3章数据类型与运算规则难度:15.若有定义“int x=11;”,则表达式“(x++*1/3) ”的值是A. 12B. 11C. 4D. 3答案:D题型:单选题知识点:第3章数据类型与运算规则难度:26.若有定义“int a=1,b=2,c=3,d=4;”,则表达式“a<b?a:c<d?c:d”的值是A. 1B. 2C. 3D. 4答案:A题型:单选题知识点:第3章数据类型与运算规则难度:27.若有定义“int a=1, b=0, c=0, x=35;”,则执行下列程序段后,变量x的值是if(!a) x--; else if(b);if(c) x=3; else x=4;A. 3B. 4C. 34D. 35答案:B题型:单选题知识点:第5章选择结构的程序设计难度:28.{若有定义“int x=1,y=1,m=1,n=1;”,则执行下列语句后,变量x和y的值分别是 switch (m) \{case 0: x=x*2;case 1:switch (n) \{case 1: x=x*2;case 2: y=y*2; break;case 3: x++;\}case 2: x++; y++;case 3: x*=2; y*=2; break;default: x++;y++;\}}A. x=2,y=1B. x=2,y=2C. x=6,y=6D. x=7,y=7答案:C题型:单选题知识点:第5章选择结构的程序设计难度:29.若有定义“int i,j;”,执行语句“for (i=0,j=1; i<=j+1; i+=2,j--) printf ("%d",i);”时的循环次数是A. 3B. 2C. 1D. 0答案:C题型:单选题知识点:第6章循环结构的程序设计难度:210.若有定义“int n=4;”,则执行语句“while(n--) printf("%d",n--);”后的输出结果是A. 20B. 31C. 210D. 321答案:B题型:单选题知识点:第6章循环结构的程序设计难度:211.{若有定义“int x=3;”,则执行下列语句后的输出结果是do \{printf("%d ",x+=1);\} while(--x);}A. 4B. 4 4C. 4 4 4D. 死循环答案:D题型:单选题知识点:第6章循环结构的程序设计难度:212.若有定义“char a[]="xyz",b[]={'x','y','z'};”,则下列叙述中正确的是A. 数组a的长度大于数组b的长度B. 数组a的长度小于数组b的长度C. 数组a和数组b的长度相同D. 数组a和数组b等价答案:A题型:单选题知识点:第7章数组难度:113.{若有定义“int aa[4][4]=\{\{1,2,3,4\},\{5,6,7,8\},\{3,9,10,2\},\{4,2,9,6\}\}, i,s=0;”,则执行下列语句后,变量s的值是for(i=0;i<4;i++) s+=aa[i][0];}A. 20B. 19C. 13D. 11答案:C题型:单选题知识点:第7章数组难度:214.调用函数时,若实参是一个数组名,则向函数传送的是A. 数组的长度B. 数组的首地址C. 数组每一个元素的地址D. 数组每个元素中的值答案:B题型:单选题知识点:第8章函数难度:115.下列各函数首部中,正确的是A. void play(var :Integer,var b:Integer)B. void play(int a,b)C. Sub play(a as integer,b as integer)D. void play(int a,int b)答案:D题型:单选题知识点:第8章函数难度:116.若有定义“int n=2,*p=&n,*q=p; ”,则下列选项中,非法的赋值语句是A. p=n;B. p=q;C. n=*q;D. *p=*q;答案:A题型:单选题知识点:第9章指针难度:217.若有定义“int *p[3]; ”,则下列叙述中正确的是A. 定义了一个类型为int的指针变量p,该变量具有三个指针B. 定义了一个名为*p的整型数组,该数组含有三个int类型元素C. 定义了一个指向一维数组的指针变量p,该一维数组应具有三个int类型元素D. 定义了一个指针数组p,该数组含有三个元素,各元素都是基类型为int的指针答案:D题型:单选题知识点:第9章指针难度:218.下列对枚举类型名的定义中正确的是A. enum a={one,two,three};B. enum a {one=9,two=-1,three};C. enum a={"one", "two", "three"};D. enum a{"one", "two", "three"};答案:B题型:单选题知识点:第10章结构、联合与枚举类型难度:219.{若有如下定义:struct student\{int num; int age;\} stu[3]=\{\{1001,20\} , \{1002,19\} , \{1003,21\}\} , *p=stu;则下列表达式中,值为1002的是}A. p++->numB. (p++)->ageC. (*++p).numD. (*p).num答案:C题型:单选题知识点:第10章结构、联合与枚举类型难度:220.下列选项中,可以作为函数fopen中第一个参数的是A. "c:\\user\\text.txt"B. c:\user\text.txtC. "c:\user\text.txt"D. c:user\text.txt答案:A题型:单选题知识点:第11章文件难度:121.若y是int型变量,则判断y为偶数的关系表达式为__________。

答案:(y%2)==0或!(y%2)或(y%2)!=1题型:填空题知识点:第3章数据类型与运算规则难度:122.下列语句序列执行后的输出结果是__________。

int x=10,y=10;printf("%d,%d\n",--x, y--);答案:9,10题型:填空题知识点:第3章数据类型与运算规则难度:123.若有语句“scanf("%d %c %f",&a,&b,&c);”,假设输入序列为2223a123o.12,则变量a和b的值分别为(1)和(2)。

答案:(1) 2223 (2) a题型:填空题知识点:第4章顺序结构的程序设计难度:224.下列语句序列执行后的输出结果是__________。

int m=5;if(m++>5) printf("%d\n",m);else printf("%d\n",--m);答案:5题型:填空题知识点:第5章选择结构的程序设计难度:225.{下列语句序列执行后,变量x和a的值分别是(1) 和(2)。

int x=3,y=6,a=0;while(x++!=(y-=1)) \{a+=1;if(y<x) break;\}}答案:(1) 5 (2) 1题型:填空题知识点:第6章循环结构的程序设计难度:226.{下列语句序列执行后的输出结果是__________。

for(int i=1; i<6; i++) \{if(!(i%2)) \{printf("#"); continue;\}printf("*");\}}答案:*#*#*题型:填空题知识点:第6章循环结构的程序设计难度:127.若有定义“char s1[15]="Hello", s2[10]="Jack";”,则语句“printf("%d",strlen(strcpy(s1,s2)));”执行后的输出结果为__________。

答案:4题型:填空题知识点:第7章数组难度:128.{若有定义“int a[ ]=\{1,2,3,4,5,6,7,8,9,0,},*p; ”,则执行语句序列“p=a; printf("%d", *(p+9)); ”后的输出结果是。

}答案:0题型:填空题知识点:第7章数组难度:229.函数调用语句“func((exp1,exp2),(exp3,exp4,exp5));”中含有__________个实参。

答案:2题型:填空题知识点:第8章函数难度:130.{若有定义:struct \{int x; int y;\} d[2]=\{\{1,3\}, \{2,7\}\};则执行语句“printf("%d",d[0].y*d[1].y/d[0].x);”的结果是。

}答案:21题型:填空题知识点:第10章结构、联合与枚举类型难度:231.{下列程序的功能是调用函数fun计算m=1+2+3+4+…+9+10,并输出结果。

请将划线处的语句补充完整。

#include <stdio.h>int fun( int n) \{int m=0,i;for(i=1; i<=n; (1) )m=m+i;return (2) ;\}int main() \{printf("m=%d\n", (3) );return 0;\}}答案:(1) i++ (2) m (3) fun(10)题型:填空题第8章函数难度:232.C语言是一种结构化程序设计语言。

相关主题