安徽建筑大学往年计算机C语言选择题(含六卷).docx
《安徽建筑大学往年计算机C语言选择题(含六卷).docx》由会员分享,可在线阅读,更多相关《安徽建筑大学往年计算机C语言选择题(含六卷).docx(138页珍藏版)》请在课桌文档上搜索。
1、往年计算机C语言选择题(一)(总分100分,考试时长90分钟)一、理论基础(每小题1分,共10分)1、以下叙述中错误的是OA、可以用IyPedef说明的新类型名来定义变量B、typedef说明的新类型名必须使用大写字母,否则会出编译错误C、用typedef可以为基本数据类型说明一个新名称D、用typedef说明新类型的作用是用一个新的标识符来代表已存在的类型名2、下列形式的常数中,c程序不允许出现的是。A、100B、E3C、30.6E-2Ds1.2353、若有条件表达式(exp)a+:b,则以下表达式中能完全等价于表达式(exp)的是A、 (exp=0)B、 (exp!=0)C、 (exp=l
2、)D、 (exp!=l)4、以下叙述中错误的是oA、可以通过typedef增加新的类型B、可以用typedef将已存在的类型用一个新的名字来代表C、用IyPedef定义新的类型名后,原有类型名仍有效D、用IyPedef可以为各种类型起别名,但不能为变量起别名5、结构化程序由三种基本结构组成,三种基本结构组成的算法A、可以完成任何复杂的任务B、只能完成部分复杂的任务C、只能完成符合结构化的任务D、只能完成一些简单的任务6、设x、y、t均为int型变量,则执行语句x=y=3;t=+x+y;后,y的值为一。A、不定值B、4C、3D、17、已知各变量的类型说明如下,则以下不符合c语言语法的表达式是:。
3、intk,a,b;unsignedlongw=5;doublex=l.422;A、x%(-3)B、 w+=-2C、 k=(a=2,b=3,a+b)D、 a+=a=+(b=4)*(a=3)8、设x、y和Z是int型变量,且x=4,y=6,z=8,则下列表达式中值为0的是。A、X&YB、x0a:-aD、a=l3、有以下程序main()inti;for(i=0:i3;i+)switch(i)(case1:printf(%dl,ri);case2:printf(%dw,i);default:printf(%d,i);()执行后输出的结果是。A、011122B、012C、 012020D、1204、若i
4、nti=10;执行下列程序后,变量i的正确结果是switch(i)case0:i+=l;case10:i+=l;case11:i+=l;default:i+=l;)A、10B、11C、12D、135、以下程序的输出结果是main()(inta=0,i;for(i=;i=0Ilb=0)&(a0Ilb=0&b=0)&(a0&bO)M(a+bOOA、if(x+);B、if(xyUy!=0);Cxif(x0)-elsey+;D、if(yb)if(bc)printf(%dn,d+1);elsePrintf(%d,+d+D;printf(%dn,d);)程序运行后的输出结果是OA、2main()(intk
5、=5;while(-k)printf(w%dM,k-=3);Printf(nw);)执行后的输出结果是A、1B、2C、4D、死循环4、以下程序运行后的输出结果是Jtincludemain()ints=0,k;for(k=7;k=0:k)(switch(k)case1:case4:case7:s+;break;case2:case3:case6:break;case0:case5:s+=2;break;)printf(s=%dn,s);)A、s=5B、s=lC、s=3D、s=75、关于循环体While的说法下列正确的是oA、循环体的执行次数总比条件表达式多一次民循环体的执行次数总比条件表达式少一
6、次C、循环体的执行次数与条件表达式无关D、循环体的执行次数与条件表达式相等6、若变量已正确定义:for(x=0,y=0;(y!=99&xV4);x+)则以上for循环()A、执行3次B、执行4次C、执行无限次D、执行次数不定7、有以下程序:#includemain()(inti=0,a=0;whilc(i20)(for(;;)if(i%5)=0)break;elsei一;)i+=13,a+=i;)Printf(%dn,a);程序的输出结果是。A、62B、63C、23D、368、下列关于宏操作的叙述错误的是A、dorhile的循环体至少无条件执行一次B、while的循环控制条件比do-while
7、的循环控制条件更严格C、do-while允许从外部转到循环体内D, do-whi 1。的循环体不能是复合语句9、以下程序中,while循环的循环次数是 omain()(int i=0;While(KlO)(if(Kl) continue;if(i=5)break;i+;)A、1B、10C、6D、死循环10、break语句的正确的用法是。A、无论在任何情况下,都中断程序的执行,退出到系统下一层。B、在多重循环中,只能退出最靠近的那一层循环语句。Bs A3, 10C、跳出多重循环。D、只能修改控制变量。四、数组/指针数组(每小题1分,共10分)1、下列定义数组的语句中,正确的是OA、 define
8、N10intxN;B、 intN=IO;intxN;C、intx0.10;D、intx;2、下面程序的输出结果是#includemain()(inta=l,2,3,4,5,6,7,8,9,0,*p;p=a;printf(%dn,*p+9);)A、0B、1C、10D、93、二维数组a的每个元素是由6个字符组成的串,其行下标i=0,l,8,列下标j=l.2,10o若a按行先存储,元素a8,5的起始地址与当a按列先存储时的元素()的起始地址相同。设每个字符占一个字节。A、 A8,5C、 5, 8D、 A0, 9)main ()4、下面对二维数组aay的定义,正确的是。A、 int array4;B、
9、 char array3,4;C、 float array(3)(4);D、 float array34;5、已有定义:int i,a10,*p;则合法的赋值语句是A、 p=100;B、 p=a5C、 p=a2+2D、 p=a+2;6、已知:int a2 3;则对数组元素的非法引用是。A、*(a0+2)B、 .al3C、 al0D、*(*(a+l)+2)7、合法的数组定义是.A、 int a6=string);B、 int a5=0,l,2,3,4,5;C、char a=wstiing,;D、char a = (0,1,2,3,4,5;8、以下程序调用findmax函数返回数组中的最大值 fi
10、ndmax(int *a,int n)int *p,*s;for(p=a,s=a; p-asB、*p*sCxapasD、p-aps9、以下对一维数组a的正确说明是A、intn:scanf(%d,n);intan;B、 intn=10,an;C、 inta(10);D、 ttdefineSIZEIOintaSIZE;10、如果用数组名作为实参,则传递给形参的是oA、数组的首地址B、第一个元素的值C、数组元素的个数D、数组中全部元素的值五、字符串/字符串指针(每小题1分,共10分)1、请读程序片段(字符串内没有空格字符):Printf(%dn,strlen(atsn012l);上面程序片段的输出结
11、果是OA、11B、10C、9D、82、下列数据中属于字符串常量”的是。A、ABCB.BCC、ABCD、A3、按照C语言规定的用户标识符命名规则,不能出现在标识符中的是。A、大写字母B、连接符C、数字字符D、下划线4、下列变量定义中,错误的是oA、 intx=3;B、 floatf;d;C、 Strings=Hello!;D、 booleanb=true;5、从键盘上输入某字符串时,不可使用的函数是()。A、getchar()B、gets()Csscanf()D、fread()6、宏定义是最常用的预处理功能之一,它用于将一个标识符定义为一个A、单精度数B、双精度数C、常量D、字符串7、下面程序的
12、功能是将字符串S中所有的字符c删除。#includewstdio.hmain()(chars80;inti,j;gets(s);for(i=j=0jsi!=,0;i+)if(si!=c);sj=,O,;puts(s);Assj+=siB、 s+j=siC、 sj=si;j+D、 sj=si8、以下正确的字符串常量是A、B,abc,C、OlympicGamesD、A9、下列的程序用来输出两个字符串前7个字符中对应相等的字符及其位置号,程序空白处应该填写的是#includenain()(charsi=chinesew,s2=japnese;inti;for(i=0;sli!=,0,fis2i!=,
13、0,u+)if(sii=s2ii7)C、在函数内定义的变量是局部变量D、函数的形参是局部变量3、若程序中定义了以下函数 double myadd(double a,double b)(return (a+b);)并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明 是。A、 double myadd(double a,b);B、double myadd(double,double);C、 double myadd(double b,double a);D、 double myadd(double x,double y);4、在C语言中,当函数调用时。A、实参和形参各占
14、一个独立的存储单元B、实参和形参共用存储单元C、可以由用户指定实参和形参是否共用存储单元D、由系统自动确定实参和形参是否共用存储单元5、下列叙述中正确的是 oA、C语言编译时不检查语法B、C语言的子程序有过程和函数两种C、C语言的函数可以嵌套定义D、C语言所有函数都是外部函数6、下列说法不正确的是oA、调用函数时,实参可以是表达式B、调用函数时,实参与形参可以共用内存单元C、调用函数时,将实参的值复制给形参,使实参变量和形参变量在数值上相等D、调用函数时,实参与形参的类型必须一致7、函数定义为fun(int &i),变量定义n=100,则下面调用正确的是A、putcha*(s2i);putch
15、ar(i)puts(sli,i)C、 printf(w%c%dnw,s2i,i)D、printf(w%cm,sii);printf(%dnn,i)10、下列数据中属于字符串常量的是。A、“a”B、ABCD、 4abc0,E、 a六、函数/函数指针(每小题1分,共10分)1、有如下程序:includelongfib(intn)if(n2)return(fib(n-l)+fib(n-2);elseretuin(2);)main()(printf(%dn,fib(3);)该程序的输出结果是。A、2B、4C、6D、82、以下叙述中错误的是。A、在函数外定义的变量是全局变量B、全局变量和局部变量不能同名
16、B、 int y5=0, 1, 2, 3, 4, 5;C、char cl = l ,2 ,3, ,4, ,5,;D、 char c2=a, b, ,c,;3、设有以下语句:Char strl=string,str28,*str3,*str4=string;则下列选项 中,不是对库函数Strcpy的正确调用,此库函数用来复制字符串。A、 strcpy(strl,HELLOl);B、StrCPy(Str2JIIELLO2);C、 strcpy(str3,HELL03);D、 strcpy(str4,HELL04);4、若有定义:int c4 5, (*cp) 5;和语句cp=c;,则能正确引用C数
17、组元素的是A、 Fun(20);B、 Fun(20+n);C、 Fun(n);D、 Fun(&n);8、已有定义int(*p)();指针P可以。A、代表函数的返回值B、指向函数的入口地址C、表示函数的类型D、表示函数返回值的类型9、以下叙述中正确的是oA、构成C程序的基本单位是函数B、可以在一个函数中定义另一个函数C、main()函数必须放在其他函数之前D、所有被调用的函数一定要在调用之前进行定义10、PUtChar()函数可以向终端输出一个。A、整型变量表达式值B、字符C、字符串D、实型变量值七、指针(每小题1分,共10分)1、以下二维数组C的定义形式是。A、intc3B、 floatc3,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 安徽 建筑 大学 往年 计算机 语言 选择题 含六卷

链接地址:https://www.desk33.com/p-1109591.html