c语言期末测试题附答案.doc
- 文档编号:230224
- 上传时间:2022-10-07
- 格式:DOC
- 页数:11
- 大小:60.50KB
c语言期末测试题附答案.doc
《c语言期末测试题附答案.doc》由会员分享,可在线阅读,更多相关《c语言期末测试题附答案.doc(11页珍藏版)》请在冰豆网上搜索。
装
订
线
内
答
题
无效
**********************
****装
**********************订********************线
**
**
**
**
**
**
**
**
******
课程代码:
A100002座位号:
《计算机技术基础(C语言)》试卷A
姓名:
学号:
专业:
学院:
班级:
20年月日
题号
一
二
三
四
五
六
七
总分
得分
第一部分选择题(共30分)
得分
评卷人
一、单项选择题(本大题共15小题,每题只有一个正确答案,答对一题得2分,共30分)
1、以下关于C语言标识符的描述中,正确的是【】。
A)标识符可以由汉字组成B)标识符只能以字母开头
C)关键字可以作为用户标识符D)Area与area是不同的标识符
2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【】。
inti,j,k;
scanf(“%d,%3d%d”,&i,&j,&k);
printf(“%d,%d,%d\n”,i,j,k);
A)12345678B)123,456,78C)123,45678D)123,*45678
3、判断char类型的变量c1是否为数字字符的正确表达式为【】。
A)(c1>=0)&&(c1<=9)B)(c1>=’0’)&&(c1<=’9’)
C)’0’<=c1<=’9’D)(c1>=’0’)||(c1<=’9’)
4、若有语句inta=1,b=2,c=3;则以下值为0的表达式是【】。
A)’a’&&’b’B)a<=bC)((a>b)||(b (a+b)==c&&a) 5、已知: inta[2][3];则对数组元素的非法引用是【】 A.*(a[0]+2)B.a[1][3]C.a[1][0]D.*(*(a+1)+2) 6、在循环语句的循环体中执行break语句,其作用是【】。 A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行 7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。 A)10B)9C)0D)1 8、若有int*p1,*p2,k;不正确的语句是【】 A.p1=&kB.p2=p1 C.*p1=k+12D.k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 A.静态(static) B.外部(extern) C.自动(auto) D.寄存器(register) 10、如下程序的输出结果是【】 main() {intx=2,a=0,b=0; switch(x) {case2: a++;b++; case1: ++a;b--;break; case0: b++;} printf("a=%d,b=%d\n",a,b);} A.a=2,b=0B.a=2,b=1C.a=1,b=1D.a=1,b=0 11、表示关系a A.(a C.(a 12、有以下程序 #include main() {intx; scanf(“%d”,&x); if(x<=3) ;else if(x ! =10)printf(“%d\n”,x);} 程序运行时,输入的值在哪个范围才会有输出结果。 【】 A.不等于10的整数B.大于3且不等于10的整数 C.大于3或不等于10的整数D.小于3的整数 13、break语句的正确用法是【】 A.无论在任何情况下,都中断程序的执行,退出到系统下一层。 B.在多重循环中,只能退出最靠近的那一层循环语句。 C.跳出多重循环。 D.只能修改控制变量。 14、若a,b,c,d均为整型变量,执行以下程序段后的t的值为【】 #defineMAX(A,B)(A)<(B)? (A): (B) ................ a=5;b=3;c=3;d=4; t=MAX(a+b,c+d)*10; A.70B.7C.8D.80 15、执行以下程序段后,m的值为【】 inta[6]={1,2,3,4,5,6},m,*p; p=&a[0]; m=(*p)*(*(p+2))*(*(p+4)); A)15B)14C)13D)12 第二部分非选择题(共70分) 得分 评卷人 二、判断题(本大题共10小题,每题1分,共10分,答T表示说法正确.答F表示说法不正确,本题只需指出正确与错误,不需要修改) 16.字符型数据不可以进行加减运算。 【】 17.函数定义与函数的声明是一回事。 【】 18.在C语言中函数能嵌套调用,也能嵌套定义。 【】 19.在C语言中switch语句必须使用break语句。 【】 20.for循环中的三个表达式都可以省略。 【】 21.do-while循环是先进行循环体语句,后判断表达式。 【】 22.只能在main()函数中定义静态变量。 【】 23.char*s1=“Ilovechina”;定义了一个指针变量s1,它的初值为字符串“Ilovechina”的首地址。 【】 24.int*p[4];与int(*p)[4];的作用相同,都是定义了一个指向数组的指针。 【】 25.预处理命令行最后也是以分号(;)结尾的。 【】 得分 评卷人 三、填空题(本大题共6小题,每题3分,共18分。 ) 26、在C语言中*作为单目运算符时表示____________,作为双目运算符时表示__________,而作为一种标记时表示______________。 27、表达式(a=3*5,a*4),a+5中a的值是__________,整个表达式的值是_________。 28、设有如下的类型说明: inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 若数组所占内存单元的起始地址为446且整型数据占2个字节,则p+5=_______,*(p+5)=______。 29、若定义了如下的共用体类型变量x和结构类型变量y,则x和y所占用的内存字节数分别为_________和__________。 unionstu1structstu2 {intnum;{intnum; charname[5];charname[5]; chars;}x;chars;}y; 30、在TC中CTRL+F9的功能是__________、__________和_____________。 31、有以下程序 #include main() {charc1,c2; scanf(“%c”,&c1) ; while(c1<65||c1>96)scanf(“%c”,&c1) ; c2=c1+32; printf(“%c,%c”,c1,c2); } 程序运行输入65回车后,能否输出结果。 (请回答能或不能)______。 得分 评卷人 得分 评卷人 四、简答题(本大题共2小题,每题3分,共6分。 ) 32、C语言中变量的存储类别有几种? 局部变量的缺省存储类别是哪种。 33、请解释以下与一个C程序有关的3种文件(需要说明这些文件是什么文件、如何形成的): (1)file.c (2)file.obj(3)file.exe 得分 评卷人 五、阅读程序回答问题(本大题共4小题,每题5分,共20分) 34、#include voidmain() {inta=10,b=18; fun1(a,b); } intfun1(intx,inty) {if(x>y) printf("a>b\n"); elseif(x elseprintf("a==b\n"); } 问题: (1)写出程序的运行结果; (2)分别列出形参和实参;(3)解释#i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 期末 测试 答案