中南民族大学10套计算机C语言期末考试复习试题及答案.pdf
《中南民族大学10套计算机C语言期末考试复习试题及答案.pdf》由会员分享,可在线阅读,更多相关《中南民族大学10套计算机C语言期末考试复习试题及答案.pdf(108页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一、判 断 共10题(共计10分)第1题(1.0分)题号:1488函数即可以嵌套定义,又可以嵌套调用.答 案:N第2题(1.0分)题号:1256unsigned和vo id在C中都是保留字.答案:Y第3题(1.0分)题号:1280表达式+i表示对变量i自加1.答案:Y第4题(1.0分)题号:1282C语言源程序的基本结构单位是main函数.答案:N第5题(1.0分)题号:1276字符常量的长度肯定为1.答案:Y第6题(1.0分)题号:1469char a=a,b,c);char b=-abc”;数组a和数组b占用的内存空间大小不一样.答案:Y第7题(1.0分)题号:1249若有int i=10
2、,j=2;则执行完i*=j+8;后i的值为28.答案:N第8题(1.0分)题号:33inti,*p=&i;是正确的C说明。答案:Y第9题(1.0分)题号:1250While循环语句的循环体至少执行次.答案:N第10题(1.0分)题号:1510有数组定义int a22=1,2,3;则a的值为0.答案:Y二、单 项 选 择 共30题(共计30分)第1题(1.0分)题号:456执行下面程序后,输出结果是main()a=45,b=27,c=0;c=max(a,b);printf(%dn,c);)int max(x,y)int x,y;int z;if(xy)z=x;else z=y;return(z)
3、;A:45B:27C:18D:72答案:A第2题(1.0分)题号:437下列数组说明中,正确的是()。A:int array4;B:int array;C:int array5;D:int array3;答案:A第3题(1.0分)题号:2396卜.面有关for循环的正确描述是()A:for循环只能用于循环次数已经确定的情况B:for循环是先执行循环体语句,后判断表达式C:在 for循环中,不能用break语句跳出循环体D:for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来答案:D第4题(1.0分)题号:2817以下程序的输出结果是().main()int i,j,k,a=3,b=
4、2;i=(-a=b+)?-a:+b;j=a+;k=b;printf(i=%d,j=%d,k=%dnM,i,j,k);)A:i=2,j=1,k=3B:i=1,j=1,k=2C:i=4,j=2,k=4D:i=1,j=1,k=3答案:D第5题(1.0分)题号:2866若有下列定义,则对a 数组元素地址的正确引用是().int a5,*p=a;A:*(p+5)B:*p+2C:*(a+2)D:*&a5答案:C第6题(1.0分)题号:711下列选项中正确的语句组是()。A:char s8;s=Beijing;B:char*s;s=”Beijing“;C:char s8;s=Beijing;D:char*s
5、;s=BeijingM;答案:D第7题(1.0分)题号:3191若变量a,i已正确定义,且 i 已正确赋值,合法的语句是()A:a=int(i);B:a=1C:+i;D:a=a+=5;答案:C第8题(1.0分)题号:490以下字符中不是转义字符的是()。A:aB:bC:c*D:V答案:C第9题(1.0分)题号:184下列定义不正确的是()。A:#define PI 3.141592B:#define S345C:int max(x,y);int x,y;D:static chare;答案:C第10题(1.0分)题号:3028char h,*s=&h;可将字符H 通过指针存入变量h 中的语句是(
6、).A:*s=H;C:s=H;D:s=H答案:B第11题(1.0分)题号:690设char型变量x 中的值为10100111,则表达式(2+x(3)的 值 是 O。A:10101001B:10101000C:11111101D:01010101答案:D第12题(1.0分)题 号:2381设以下变量均为int类型,表达式的值不为7的是()A:x=y=6,x+y,x+1B:x=y=6,x+y,y+1C:x=6,x+1,y=6,x+yD:y=6,y+1,x=y,x+1答案:C第13题(1.0分)题号:3124若有说明int a34;则对a 数组元素的正确引用是().A:a24B:a1,3C:a1+1
7、0D:a(2)(1)答案:C第14题(1.0分)题号:679在 C 语言中,形参的缺省存储类是()。A:autoB:registerC:staticD:extern答案:A第15题(1.0分)题号:1343C 语言源程序的基本单位是().A:过程B:函数C:子程序D:标识符答案:B第16题(1.0分)题号:3023C 语言程序中必须有的函数是().A:#include stdio.hB:mainC:printfD:scanf答案:B第17题(1.0分)题号:3228有定义:int a=8,b=5,c;,执行语句c=a/b+0.4;后,c的值为()A:1.4B:1C:2.0D:2答案:B第18题
8、(1.0分)题号:640以下对二维数组a的正确说明是()。A:int a3B:float a(3,4)C:double a14D:float a(3)(4)答案:C第19题(1.0分)题号:2884以下标识符中,不能作为合法的C用户定义标识符的是().A:answerB:toC:signedD:_if答案:C第20题(1.0分)题号:652在C语言中,引用数组元素时,其数组下标的数据类型允许是()。A:整型常量B:整型表达式C:整型常量或整型表达式D:任何类型的表达式答案:C第21题(1.0分)题号:381以下标识符中,不能作为合法的C用户定义标识符的是()。A:answerB:toC:sig
9、nedD:_if答案:C第22题(1.0分)题号:2898已知year为整型变量,不能使表达式(year%4=0&year%100!=0)|year%400=0的值为 真 的数据是().A:1990B:1992C:1996D:2000答案:A第23题(1.0分)题 号:177以下描述中,正确的是()。A:预处理是指完成宏替换和文件包含中指定的文件的调用B:预处理指令只能位于C源文件的开始c:c源程序中凡是行首以#标识的控制行都是预处理指令D:预处理就是完成C编译程序对C源程序第遍扫描,为编译词法和语法分析作准备答案:C第24题(1.0分)题 号:156执行卜.列语句后的输出为()。intj=-
10、1;if01;i-)for(j=1;jvi;j+)putchar(#);A:无B:#C:#D:#答案:B第27题(1.0分)题号:2830下列程序的输出结果是().main()int x=1,y=0,a=0,b=0;switch(x)(case 1 :s witch(y)(case 0:a+;break;case 1 :b+;break;)case 2:a+;b+;break;case 3:a+;b+;break;)printf(,a=%d,b=%dnJa,b);)A:a=1,b=0B:a=2,b=1C:a=1,b=1D:a=2,b=2答案:B第28题(1.0分)题号:573C 语言中运算对象
11、必须是整型的运算符是()。A:%=B:/C:=D:=答案:A第29题(1.0分)题号:647以下能对二维数组a 进行正确初始化的语句是()。A:int a2=1,0,1,5,2,3);B:int a3=1,2,3,4,5,6);C:int a24=12,3,4,5,6);D:int an3=1,0,1,1,1;答案:B第30题(1.0分)题号:3135以下数组定义中不正确的是().A:int a23;B:int b3=0,1,2,3);C:int c100100=0;D:int d3=1,2,1,2,3,1,2,3,4);答案:D三、程序填空 共2题(共计24分)第1题(12.0分)题号:41
12、7【程序填空】题目:利用全局变量计算长方体的体积及三个面的面积。.*/int s1,s2,s3;int vs(int a,int b,int c)int v;/*S PACE*/v=?;s1=a*b;/*S */S2=?;s3=a*c;return v;)main()int v,l,w,h;clrscr();printf(ninput length,width and height:);/*SPACE*/scanf(%d%d%dH,?,&w,&h);/*S PACE*/v=?;printf(v=%d s1=%d s2=%d s3=%dnM,v,s1,s2,s3);getch();)答案:=(答
13、案 1 )=a*b*c=或=a*b*c=(答案 2)=b*c=或=b*c(答案3):&|=(答案 4)=vs(l,w,h)=或=vs(I,w,h)第2题(12.0分)题号:441/*.【程序填空】题目:给定程序中函数fun的功能是:从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。-*/#include include void fun(long s,long*t)long sl=10;s/=10;广*SPACE*I*t=s(?)10;while(s0)/*s PACE*/s=?;,*SPACE*/*t=s%10*sl?;/*m*SpACE*/si=si?10;)main()
14、long s,t;clrscr();printf(HnPlease enter s:H);scanf(%ld,J&s);fun(s,&t);printf(The result is:%ldn,t);答案:=答案%=(答案 2),s/100=(答案 3),+*t(答案4)四、程序改错 共2题(共计22分)第1题(11.0分)题号:383/*-【程序改错】题目:给定程序的功能是:读入一行英文文本,将其中每个单词的最后一个字母改成大写,然后输 出 此 文 本 行(这里的“单词”是指由空格隔开的字符串)o 例如,若输入I am a student to takethe examination.,则应输
15、出I aM A studenT tOtakE thE examination/注意:不可以增加或删除程序行,也不可以更改程序的结构。.7#include conio.h#include stdio.hinclude ctype.h#include string.huplst(char*p)(/*FOUND*/integer k=0;for(;*p;p+)if(k)/*FOUND*7if(*p =)k=0;,*FOUN D*/*(P-1)=toupper(*(p-1 );)else if(*p!=)k=1;*(P-1)=toupper(*(P-1);)main()char chrstr81;pr
16、intf(nnPlease enter a string:);gets(chrstr);printf(nnnBefore changing:n%s,chrstr);up1st(chrstr);printf(MnAfter changing:n%s,chrstr);答案:=(答案 1 )=int k=0;=(答案 2)=if(*P=)=(答案 3)=*(P T)=toupperf*(p-1 );第2题(11.0分)题号:431/*-【程序改错】题口:编写函数fu n求1000以内所有8的倍数之和。注意:不可以增加或删除程序行,也不可以更改程序的结构。*/#includestdio.h#defin
17、e N 1000main()int sum;sum=fun(8);printf(%d以内所有|的 倍 数 之 和 为:%dn,N,8,sum);getch();int fun(int m)r*FOUND*/int s=0;i;/*Fou N D*for(i=1;iN;i+)/*FOUND*、if(i/m=0)s+=i;return s;答案:=(答案 1 )=int s=0,i;=(答案 2)=for(i=1;iN;i+)=(答案 3)=if(i%m=O)五、程 序 设 计 共1题(共计14分)第1题(14.0分)题号:390【程序设计】题目:求一批数中最大值和最小值的差。注意:部分源程序给出
18、如下。清勿改动主函数main和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句。.*/int max_min(int a,int n)*Prograji*!*/*End*I#define N 30#include stdlib.hMinclude stdio.hmain()int aN,i,k;clrscr();for(i=0;iN;i+)ai=random(51)+10;for(i=0;iN;i+)printf(%5d,ai);if(i+1)%5=0)printfCn);)k=max_min(a,N);printf(nthe result is:%dn,k);yzj();getc
19、hO;yzj()FILE*IN,*OUT;int n;int i30;int o;IN=fopen(Min.datr);if(IN=NULL)printffRead File Error);)OUT=fopen(,out.dat,w,);if(OUT=NULL)printf(Write File Error);)for(n=0;n5;n+)(fscanf(IN,%d,&in);o=max_min(i,5);柄 intf(OUT,%drT,o);fclose(IN);fclose(OUT);)答案:.int i,max,min;max=min=a0;for(i=1;imax)max=ai;els
20、e if(aib)=c的值为 真。答案:Y第10题(1.0分)题号:1502对二维数组a来说,由于a+1与*(a+1)的值相等,因此:者的含义是一样的.答案:N二、单 项 选 择 共30题(共计30分)第1题(1.0分)题号:177以下描述中,正确的是()。A:预处理是指完成宏替换和文件包含中指定的文件的调用B:预处理指令只能位于C源文件的开始c:c源程序中凡是行首以#标识的控制行都是预处理指令D:预处理就是完成C编译程序对C源程序第一遍扫描,为编译词法和语法分析作准备答案:C第2题(1.0分)题号:2789设C语言中,int类型数据占4个字节,则short类型数据占().A:1个字节B:2个
21、字节C:4个字节D:8个字节答 案:B第3题(1.0分)题号:693以下各选项企图说明一种新的类型名,其中正确的是()。A:typedef v1 int;B:typedef v2=int;C:typedef int v3;D:typedef v4:int;答案:c第4题(1.0分)题号:104以下运算符中,优先级最高的运算符是A:|B:%C:!D:=答案:C第5题(1.0分)题号:138以卜.程序的输出结果是()。main()int i,j,k,a=3,b=2;i=(-a=b+)?-a:+b;j=a+;k=b;printf(i=%d,j=%d,k=%dn,i,j,k);)A:i=2,j=1,k
22、=3B:i=1,j=1,k=2C:i=4,j=2,k=4D:i=1,j=1,k=3答案:D第6题(1.0分)题号:2907以下程序段的执行结果是().double x;x=218.82631;printf(H%-6.2en,x);A:输出格式描述符的域宽不够,不能输出B:输出为 21.38e+01C:输出为2.2e+02D:输出为-2.14e2答案:C第7题(1.0分)题号:152以下程序的运行结果是()。main()int n;for(n=1;ny?+x:+y的值为().int x=1,y=2,z=3;A:2B:3C:6D:5答案:C第19题(1。分)题 号:526用户定义的函数不可以调用的
23、函数是()。A:非整型返回值的B:本文件外的C:main函数D:本函数下面定义的答案:C第20题(1.0分)题号:2567以下标识符中,不能作为合法的C 用户定义标识符的是().A:a3_b3B:voidC:_123D:IF答案:B第21题(1.0分)题号:2401下面程序段的输出结果为0 int a,b;b=(a=3*5,a*4,a*5);printf(%d,b);A:60B:75C:65D:无确定值答案:B第22题(1.0分)题号:3063若有定义:int a=7;float x=2.5,y=4.7;则表达式 x+a%3*(int)(x+y)%2/4 的值是().A:2.500000B:2
24、.750000C:3.500000D:0.000000答案:A第23题(1.0分)题号:3129若有说明:int a4=0,0;则下面不正确的叙述是().A:数组a 的每个元素都可得到初值0B:二维数组a 的第一维大小为1C:因为二维数组a 中第二维大小的值除经初值个数的商为1,故数组a 的行数为1D:有元素a0 和 a1可得到初值0,其余元素均得不到初值0答案:D第24题(1.0分)题号:3186若有说明:int i,j=2,*p=&i;,则能完成i=j赋值功能的语句是().A:i=*p;C:i=&j;D i p;答案:B第25题(1.0分)题号:3016与实际参数为实型数组名相对应的形式参
25、数不可以定义为().A:float a;B:float*a;C:float a;D:float(*a)3;答案:C第26题(1.0分)题号:515int 按照数组a 的元素在内存的排列次序,不能将数1,2,3,4,5,6存入a 数组的是O。A:for(i=0;i2;i+)for0=0;j3;j+)ai0=i*3+j+1;B:for(i=0;i3;i+)for(j=0;j2;j+)aOi=j*3+i+1;C:for(i=0;i6;i+)ai/3i%3=i+1;D:for(i=1;i=6;i+)aii=i;答案:D第27题(1.0分)题号:2799下列运算符中,不属于关系运算符的是().A:C:=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中南 民族大学 10 计算机 语言 期末考试 复习 试题 答案
限制150内