C模拟题及答案
- 格式:docx
- 大小:31.90 KB
- 文档页数:10
2019年C证模拟考试题库及答案(二)第1题、【判断题】吊钩由于长期使用产生剥裂,必须对其焊接修补后方可继续使用。
A、正确B、错误正确答案:B第2题、【判断题】因作业需要,临时搭拆或变动安全防护时,必须经项目负责人同意。
A、正确B、错误正确答案:A第3题、【判断题】圆盘锯的安全防护装置包括分料器、锯盘护罩、防护挡板和传动部位防护罩。
A、正确B、错误正确答案:A第4题、【判断题】土体经过挖掘后,组织遭受破坏,体积减小的性质称为土的可松性。
A、正确B、错误正确答案:B第5题、【判断题】土坡坡度要根据工程地质和土坡高度,结合当地同类土体的稳定坡度值确定。
A、正确B、错误正确答案:A第6题、【判断题】在基坑作业时。
作业人员上下坑沟应先挖好阶梯或设木梯,不应踩踏土壁及支撑上下A、正确B、错误第7题、【判断题】在工期紧的情况下,非电工人员也可以接线。
A、正确B、错误正确答案:B第8题、【判断题】在拆除作业前,施工单位应检查建筑内各类管线情况,确认全部切断后方可施工。
A、正确B、错误正确答案:A第9题、【判断题】在施工中发生危及人身安全的紧急情况时,作业人员有权立即停止作业或者在采取必要的应急措施后撤离危险区域。
A、正确B、错误正确答案:A第10题、【判断题】在施工生产过程中,造成人员死亡、伤害、职业病、财产损失或其他损失的意外事件,称为生产安全事故。
A、正确B、错误正确答案:A第11题、【判断题】在烟火中逃生,要用湿毛巾捂住嘴鼻,其主要目的是为了防止呼吸道灼伤.A、正确B、错误正确答案:A第12题、【判断题】在生产过程中,事故仅是造成人员死亡、伤害,不包括财产损失或其他损失。
A、正确B、错误第13题、【判断题】在生产过程中,事故是仅指造成人员死亡、伤害,但不包括财产损失或者其他损失的意外事件。
A、正确B、错误正确答案:B第14题、【判断题】基坑周边、尚未装栏板的阳台、料台与各种平台周边、雨蓬与挑檐边、无外脚手架的屋面和楼层边,以及水箱与水塔周边等处,都必须设置防护栏杆。
c语言试题及答案c语言试题及答案C语言是一门通用计算机编程语言,应用广泛。
小编收集了c语言试题及答案,欢迎阅读。
c语言试题一选择题(7分,每小题0.5分)1.C语言源程序的基本单位是( )。
A 过程B 函数C 子程序D 标识符2.下列程序的输出结果是( )。
main( ){ int a=7,b=5;printf("%d ",b=b/a);}A 5B 1C 0 D不确定值3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是( )。
A 7B 8C 9D 24.设a为int型变量,执行下列赋值语句后,a的取值分别是( )。
a=125.534; a=(int)125.521%4; a=5<<2;A 125,31,1B 125,1,20C 125,31,20D 125.534,2,205.设有如下程序段,下面描述中正确的是 ( )。
int k=10; while(k=0) k=k-1;A 循环执行一次 B循环是无限循环 C循环体语句一次也不执行 D 循环体语句执行一次6.以下程序的输出结果为( )。
int i;void prt( ){ for(i=5;i<8;i++) printf("%c",'*');printf(" ");}main( ){ for(i=5;i<=8;i++) prt( );}A ***B *** *** *** ***C *** ***D * * *7.在C语言程序中,以下说法正确的是( )。
A函数的定义可以嵌套,但函数的调用不可以嵌套B函数的定义不可以嵌套,但函数的调用可以嵌套C函数的定义和函数的调用都不可以嵌套D函数的定义和函数的调用都可以嵌套8.以下函数调用语句中含有( )个实参。
func((e1,e2),(e3,e4,e5));A 2B 3C 5D 语法错误9.以下程序的输出结果为( )。
⼀、选择题((1)~(10)每⼩题2分,(11)~(50)每⼩题1分,共60分) 下列各题A)、B)、C)、D)四个选项中,只有⼀个选项是正确的,请将正确选项涂写 在答题卡相应位置上,答在试卷上不得分。
(1)算法⼀般都可以⽤________控制结构组合⽽成。
A)循环、分⽀、递归 B)顺序、循环、嵌套 C)循环、递归、选择 D)顺序、选择、循环 答案:D 评析:算法的控制结构给出了算法的基本框架,不仅决定了算法中各操作的执⾏顺序,也直接反映了算法的设计是否符合结构化原则。
⼀个算法⼀般都可以⽤顺序、选择、循环三种基本控制结构组合⽽成。
(2)数据的存储结构是指________。
A)数据所占的存储空间量 B)数据的逻辑结构在计算机中的表⽰ C)数据在计算机中的顺序存储⽅式 D)存储在外存中的数据 答案:B 评析:数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构。
(3)设有下列⼆叉树: 对此⼆叉树中序遍历的结果为________。
A)ABCDEF B)DBEAFC C)ABDECF D)DEBFCA 答案:B 评析:中序遍历是指⾸先遍历左⼦树,然后访问根结点,最后遍历右⼦树;并且在遍历左、右⼦树时,仍然先遍历左⼦树,然后访问根结点,最后遍历右⼦树的⼀种⼆叉树遍历算法。
(4)在⾯向对象⽅法中,⼀个对象请求另⼀对象为其服务的⽅式是通过发送________。
A)调⽤语句 B)命令 C)⼝令 D)消息 答案:D 评析:⾯向对象的世界是通过对象与对象间彼此的相互合作来推动的,对象间的这种相互合作需要⼀个机制协助进⾏,这样的机制称为消息。
消息是⼀个实例与另⼀个实例之间传递的信息,它请求对象执⾏某⼀处理或回答某⼀要求的信息,它统⼀了数据流和控制流。
(5)检查软件产品是否符合需求定义的过程称为________。
A)确认测试 B)集成测试 C)验证测试 D)验收测试 答案:A 评析:确认测试的任务是验证软件的功能和性能及其他特性是否满⾜了需求规格说明中的确定的各种需求,以及软件配置是否完全、正确。
一、选择题1.下面关于C语言的叙述中,错误的是()。
A)若一条语句较长,也可分写在下一行上B)构成C语言源程序的基本单位是表达式C)C语言源程序中大、小写字母是有区别的D) 一个C语言源程序可由一个或多个函数组成答案:B,基本单位是函数,所以B错,A对如图所示,将一句话写在两行,编译成功。
C对,区分大小写D对,可以有子函数和主函数2.C语言的基本数据类型包括()。
A)整型、实型、字符型B)整型、实型、字符型、逻辑型C)整型、字符型、逻辑型D)整型、实型、逻辑型答案:A,记住即可,其实还有枚举型(enum)3.语句x=(a=3,b=++a);运行后,x,a,b的值依次为()。
A)3,3,4 B)4,4,3 C)4,4,4 D)3,4,3答案:C,a首先赋值3,b=++a,取加完后的a值,也就是4,x取逗号运算符最后一个数,所以选C 4. 下面叙述中,错误的是()。
A)C语言基本的算术运算符不包含模运算符”%”B)算术运算符的优先级高于关系运算符C)自加和自减运算符的结合方向是”自右至左”D)C语言规定在表达式求值时,按其中运算符的优先级先高后低的次序进行答案:A,%表示求余,也是算术运算符5.已知double a;使用scanf()函数输入一个数值给变量a,正确的函数调用是()。
A)scanf(”%ld”,&a); B)scanf(”%d”,&a);C)scanf(”%7.2f”,&a); D)scanf(”%lf”,&a);答案:D,注意scanf中没有%m.nf的格式,C错。
6.下面叙述中()不是结构化程序设计三种基本结构的共同特点。
A)先判断后执行B)单入口,单出口C)程序中没有执行不到的语句D)无死循环答案:A,注意到do while结构属于先执行后判断,所以A不是共同特点。
7. 已知char a=’R’;则正确的赋值表达式是( ).A)a=(a++)%4 B)a+2=3 C)a+=256 D)a=’\078’答案:AC,B错,赋值表达式左边不能是表达式,只能是变量,B就错了,D错,八进制合法数是0到7,D 中的8就非法。
计算机二级《C语言》模拟试题及答案计算机二级《C语言》模拟试题及答案1、以下语句的输出结果是( )。
int a=-1,b=4,k;k=(+ +a<0)&&!(b - -<=0);printf("%d,%d,%d\n",k,a,b);A. 1,0,4B. 1,0,3C. 0,0,3D. 0,0,42、下列程序的输出结果是( )。
char *p1="abcd", *p2="ABCD", str[50]="xyz";strcpy(str+2,strcat(p1+2,p2+1));printf("%s",str);A. xyabcABB. abcABzC. ABabczD. xycdBCD3、执行下面的程序后,a的值是( )。
#define SQR(X) X*Xmain( ){ int a=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf("%d\n",a); }A. 10B. 1C. 9D. 04、设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i 个元素的地址为( )。
A.P+i*2B. P+(i-1)*2来源:考试大C. P+(i-1)D. P+i5、下列程序执行后输出的结果是( )。
int d=1;fun (int p){ int d=5;d + =p + +;printf("%d,",d); }main( ){ int a=3;fun(a);d + = a + +;printf("%d\n",d); }A. 8, 4B. 9, 6C. 9, 4D. 8, 56、表达式:10!=9的值是( )。
A. trueB. 非零值C. 0D. 17、若有说明: int i,j=7, *p=&i;, 则与i=j; 等价的语句是( )。
《C语言程序设计》试题四一.单项选择题1.运算符___________的优先级最高。
A.[ ]B.+= C.?: D.++2.main( ){ int n;( n=6*4,n+6),n*2;printf(―n=%d\n‖,n); }此程序的输出结果是______________.A.30 B. 24 C.60 D. 483.若有如下定义,则__________是对数组元素的正确的引用。
.int a[10] , *p ;p=a ;A. *&a[10]B.a[11] C. *(p+11) D. *p *p *p4.设整型变量n的值为2,执行语句―n+=n-=n*n;‖后,n的值是__________A. 0B. 4C. - 4D. 25.各种基本数据类型的存贮空间正确的长度排列为__________。
A.Char<long<int<float<do ubleB.Double<float<long<int< charC.Char<int<long<float<do ubleD.Float<int<long<char<do uble 6.下面的变量说明中_____________是正确的。
A.char:a, b, c;B.char a; b; c; C.chara, b, c; D.char a, b, c7.表达式y=(13>12?15:6>7?8:9)的值为____________ 。
A9 B 8C 15 D. 18.若x=5,y=3 则y*=x+5; y的值为_______________.A. 10B. 20C. 15D. 309.能正确表示a和b同时为正或同时为负的逻辑表达式是_________。
A.a>=0||b>=0)&&(a<0||b<0) B.(a>=0 &&b>=0)&&(a<0 && b<0)C.(a+b>0) &&(a+b<=0)D.a*b>010.C语言中,合法的字符型常数是_________。
1、下面程序的输出是___D______#include<stdio.h>void main(){ int k=11;}A)C)2A) ++t;3、下______A____.A) '\t' B) "A" C) 65D) A4、表达式: 10!=9的值是________D____.A) true B) 非零值C) 0 D) 15、C语言提供的合法的数据类型关键字是_____B____.A) Double B) short C) integer D) Char码单位是C) 函数完语句C) 1449、执行下面程序中的输出语句后,输出结果是____B__.#include<stdio.h>void main(){int a;printf("%d\n",(a=3*5,a*4,a+5));}A) 65 B) 20 C) 15D) 1010、下面程序的输出是____B______.#include<stdio.h>void main()}A) 17D) 2411}A) 012、已知字母A的ASCII码为十进制的65,下面程序的输出是______A_____.#include<stdio.h>void main(){char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}A) 67,D B) B,C C) C,D D) 不确定的值aC)结果是C) 910 D) 10 915、设有如下定义:int x=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y));的输出结果是_____D_____.A) 1 B) 0 C) 4D) 316、为表示关系x≥y≥z,应使用C语言表达式___A___.A) (x>=y)&&(y>=z) B)17、CA) 整型实型,C) 整型D) 整型18、量A) 200 B) 100C) 100 200 D) 输出格式符不够,输出不确定的值19、阅读下面的程序#include<stdio.h>void main(){char ch;scanf("%3c",&ch);printf("%c",ch);}c D)}则程序的运行结果是____D____.A) 1,19 B) -1,19 C) 1,17D) -1,1721、阅读下面的程序#include<stdio.h>void main(){int i,j,m,n;i=8;j=10;m=++i;}A)C)22A) 023、若已定义int a,则表达式a=10,a+10,a++的值是__B_.A) 20 B) 10 C) 21D) 1124、阅读下面的程序#include<stdio.h>void main(){int i,j;scanf("%3d%2d",&i,&j);printf("i=%d,j=%d\n",i,j);回车>,则B)}A) 1,1,2 B) 1,0,3 C) 0,1,2D) 0,0,326、下面程序的输出结果是____A____.#include<stdio.h>void main(){int a=5,b=3;float x=3.14, y=6.5;printf("%d,%d\n",a+b!=a-b,x<=(}A) 1,0D) 0,027A)D) 128int a=010, b=0x10, c=10;printf("%d,%d,%d\n",a,b,c);则输出结果是____B_____.A) 10,10,10 B) 8,16,10 C) 8,10,10 D) 8,8,10 29、已知有double型变量x=2.5,y=4.7,整型变量a=7,则表达式x+a%3*(int)(x+y)%2/4 的值是_____B____.A) 2.4 B) 2.5 C)2.75 D) 0,x=2;,值是C) 311,10D) 11,1332、设有以下语句:int x=10;x+=3+x%(3),则x的值是.____A_____A) 14 B) 15 C) 11D) 1233、若d为double型变量,则表达式d=1,d+5,d++的值是_____D__.A) 1 B) 6.0 C) 2.0D) 1.034、表达式5!=3的值是____D____.A) TD) 135A) 0D) 636式__D__.A) 0D) 137、在_____A____.A) 在C程序中,无论是整数还是实数,都能被准确无误的表示B) 在C程序中,变量名代表存储器中的一个位置C) 静态变量的生存期与整个程序的生存期相同D) C语言中变量必须先定义后引用38、C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符____C____.float y;值的数C) int行是从函数结束B) 本程序的第一个函数开始,到本程序的最后一个函数结束C) 本程序的主函数开始,到本程序的最后一个函数结束D) 本程序的第一个函数开始,到本程序的主函数结束41、设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是____A____.A) 10<a<15 B)C)42、下}{c=b/a;printf("%d/%d=%d\n",b,a,c) ;}}A) 60/5=12 B) 300 C) 60*5=300 D) 1243、如果c为字符型变量,判断c是否为空格不能使用____A____.(假设已知空格ASCII码为32)A) if(c=='32') B) if(c==32) C) if(c=='\40') D) if(c==' ')结果是printf("x<y");}A) 3<5 B) 5>3 C) x>yD) x<y45、运行下面程序时,若从键盘输入数据为"6,5,7<CR>",则输出结果是____C___.#include <stdio.h>void main( ){ int a,b,c;scanf("%d,%d,%d",&a,&b,&c);}A) 5D)46、执行下面程序时,若从键盘输入"2<CR>",则程序的运行结果是____A____.#include <stdio.h>void main( ){ int k; char cp;cp=getchar( );if (cp>='0' && cp<='9')k=cp-'0';else if (cp>='a' && cp<='f')k=cp-'a'+10;C) 1盘输入(a!=2.0)) b=1.0/(a+2.0);else if (a<10.0) b=1.0/2;else b=10.0;printf("%f\n",b);}A) 0.000000 B)0.500000C) 1.000000 D)0.25000048、执行下面程序后,运行结果是____A____.}D) y=149、运#include <stdio.h>void main( ){ int x,y,z;scanf("%d,%d,%d",&x,&y,&z);if (x<y)if (y<z)printf("%d\n",z);else printf("%d\n",y);else if (x<z)printf("%d\n",z);else printf("%d\n",x);}A) 34 B) 12 C) 9 D)}A) Hello! B) Hello!Good Morning!C) Hello! D) Hello!Good morning!Bye_Bye!Bye_Bye!51、执行下列程序段后的输出结果是A) 3D) 452、设达A) ZD) A53void main( ){ int x=8,y=-7,z=9;if (x<y)if (y<0) z=0;else z-=1;printf("%d\n",z);}A) 8 B) 1 C) 9D) 054、运行下面程序时,若从键盘输入"5 <CR>",则程序的输出结果是C) 5"3,结果是#include <stdio.h>void main( ){ int a,b,s;scanf("%d,%d",&a,&b);s=a;if (s<b) s=b;s=s*s;printf("%d\n",s) ;}A) 14 B) 16 C) 18D) 2056、}A) 3,0D) 3,157等级:B 分数:60~84等级:C 分数:60 以下对于等级grade输出相应的分数区间,能够完成该功能的程序段是____D____.{case 'A':printf("85--100\n");case 'B':printf("60--84\n");case 'C':printf("60以下\n");default:printf("等级错误!\n");}!\n");'B':printf("60--84\n");break;case 'C':printf("60以下\n");default:printf("等级错误!\n");}{case'A':printf("85--100\n");break;case'B':printf("60--84\n");break;case 'C':printf("60以下}58y=A) y=1;y=1;y=-1;C) y=0; D) y=-1;if (x>=0) if (x>0) y=1;else y=-1;59、有如下程序#include <stdio.h> void main( ){ float x=5.0,y;if(x<0.0) y=0.0;case 1:switch (y){casecase1:printf("second\n");break;}case 2:printf("third\n");}}A) firstC) first61voidif (!c) x=15;else x=25;printf("d=%d\n",d);} D) 2562、有如下程序:#include <stdio.h>void main( ){ int a=2,b=-1,c=2;if (a<b)C) 2结果是else if (y==0) x=5;else x=6;printf("%d,%d\n",x,y);}D) 出错信息64、有如下程序#include <stdio.h>void main( ){ int x=1,a=0,b=0;switch(x){}}A)65、{ int a=-1,b=1,k;if ((++a<0) && (b--<=0))printf("%d %d\n",a,b);else}A) -1 1 B) 0 1 C) 1 0D) 0 066、假定w、x、y、z、m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4;的值是C) 2结果是A) a<=100 B) 100 C) 0D) 168、若执行下面的程序从键盘上输入9,则输出结果是.______B________void main( ){int n;scanf("%d",&n);if (n++<10) printf("%d\n",n);else printf("%d\n",n--);}A) 11 B) 10 C) 9 D) 869}A) 7D) 470void main( ){int x;scanf("%d",&x);if (x++>5) printf("%d\n",x);}A) 7 B) 6 C) 5D) 471、以下程序段运行结果是____A____. int x=1,y=1,z=-1;x+=y+=z;D)C) 4,3 D) 2,-173、运行下面程序时,若从键盘输入数据为"123",则输出结果是___C____.void main(){ int num,i,j,k,place;scanf("%d",&num);if (num>99)place=3;else if(num>9){case 1: printf("%d\n",k);}}A) 123 B) 1,2,3 C) 321 74、执行下列程序后的输出结果是___D____.#include <stdio.h>void main( ){ int k=4,a=3,b=2,c=1;printf("%d\n",k<a?k:c<b?c:a);C) 2a输入b=a>15?a+10:a-10;printf("%d\n",b) ;}A) 5 B) 25 C) 1577、运行下面程序后,输出是___D___.#include <stdio.h>void main( ){ int k=-3;if (k<=0) printf("****\n");else printf("####\n")}B) ****D)78、执}A) 有语法错误不能编译B) 能通过编译,但不能通过连接C) 输出****D) 输出#### 性,C语言规定else总是与___C___组成配对关系.A) 缩排位置相同的ifB) 在其之前未配对的ifC) 在其之前尚未配对的最近的ifD) 同一行上的if型变量,的值为C) 1A)是死循环B)循环执行两次C)循环执行一次D)有语法错误82、对下面程序段描述正确的是___B____.while (!x!=0) s+=++x;printf("%d",s);A) 运行程序段后输出0B) 运行程序段后输出1C) 程序段中的控制表达式是非法的D) 程序段循环无数次83、A) ##84{ int a=1,b=10;do{ b-=a;a++;} while(b--<0);}A) 3,11 B) 2,8 C) 1,-1D) 4,985、下面程序段的运行结果是____B______.int n=0;C) 234结果是C)void main(){ int s=0,i=1;while (s<=10){ s=s+i*i;}printf("%d",--i);}A) 4 B) 3 C) 5D) 688、函数pi的功能是根据以下近似公式求π值:n)}A) 1/i*i B) 1.0/i*i C)1.0/(i*i) D) 1.0/(n*n)89、下面程序段的运行结果是for(x=10;x>3;x--){ if(x%3) x--;--x; --x;printf("%d ",x);}A) 6 3 B) 7 4 C) 6 2结果是printf("%d\n",b);}A) 34 B) 24 C) 26 D) 25_____D______.for(i=1;i<=5;)printf("%d",i);i++;A) 12345 B) 1234 C) 15D) 无限循环92、}A) 2 093、以{ int i=10,j=0;do{ j=j+1; i--;}while(i>2);}A) 50 B) 52 C) 51D) 894、以下函数的功能是:求x的y次方,请填空.____C______#include<stdio.h>C) x{ int x=23;do{ printf("%d",x--);}while(!x);该程序的执行结果是___B____A) 321 B) 23C) 不输出任何内容D) 陷入死循环96、以下程序段的执行结果是____C____.A) 12D) 2597、{ if (i%2!=0) {printf("#");continue;}printf("*");}printf("\n");}A) #*#*# B) ##### C) *****D) *#*#*98、下面程序的输出结果是____D______.#include<stdio.h>while (--y);printf("%d\n",y--);}A) -1 B) 1C) 8 D) 0100、有如下程序#include<stdio.h>void main( ){ int n=9;while(n>6){n--;printf("%d",n);}A) 9878765101A) 6 B) 3 C) 死循环D) 0102、以下循环体的执行次数是___D____#include<stdio.h>void main( ){ int i,j;for(i=0,j=1; i<=j+1; i+=2, j--)printf("%d \n",i);}A) 3 B) 2 C) 1出为ch<='Z')}printf("\n");}A) ABCdef B) abcDEF C) abc D) DEF104、下面程序的输出结果是____D______.main( ){int i,k=0, a=0, b=0;for(i=1;i<=4;i++)}A) k=5b=4b=4105、执行下面程序段后,k的值是____D_____.int i,j,k;for(i=0,j=10;i<j;i++,j--)k=i+j;A) 9 B) 11 C) 8 D) 10106、下面程序是计算n个数的平均值,请填空.____B___#include<stdio.h>C) xavg/n avg/x avg/n107、以下程序的功能是:从键盘上输入若干个学生的成绩, 统计并输出最高成绩和最低成绩,当输入负数时结束输入。
三、程序填空题第一章C语言基础知识(C语言概述、算法、数据类型运算符表达式、位运算)1以下程序不用第三个变量实现两个数对调的操作。
#includ “stdio.h”main(){int a,b;scanf("%d,%d",&a,&b);a=<a+b>;(三个字符)b=<a-b>;(三个字符)a= a-b;printf("%d,%d",a,b);}2、选择程序的运行结果。
main ( ){ int x=1, y=2, z, a, b, c, d;z = ++x||++y;printf("x=%d\n", x);printf("y=%d\n", y); /*输出结果<y=2>(三个字符) */a=-1; b=-2; c=++a&&b++;printf("b=%d\n", b); /*输出结果<b=-2> (三个字符)*/ } 3以下程序的结果为_______main(){unsigned int a=3, b=10;printf("%d\n",a<<2|b>>1); /*输出结果<14> */printf("%d\n",a<<2&b>>1); /*输出结果<0> */}4 若x=3,y=z=4,则下列表达式的值是。
(1) (z>=y>=x)? 1:0/*值为<0> */(2) z>=y&&y>=x/*值为<1> */5已知float x=4.3,int y;执行语句y=(int)x后,x为<int>型(填写小写英文字母),且y=<4>(填写阿拉伯数字);6表达式’c’&&’d’的值为<1>(填写阿拉伯数字),’c’&&’d’||!(3+4)的值为<1>(填写阿拉伯数字)。
一、选择题1.C语言中,复合语句的构成是将一系列语句置于()。
A)begin与end之间B)一对圆括号”()”之间C)一对圆括号”{}”之间D) 一对圆括号”[]”之间答案:C,复合语句要放在{}之间2.C语言的字符型数据在内存中的存储形式是()。
A)原码B)补码C)反码D)ASCII码答案:D,字符数据存储格式为ASCII码3.下面关于C语言变量的叙述中,错误的是()。
A)可以用const关键字定义变量B)在C程序中,SUM和sum是不同的变量C)变量名必须由字母或下划线开头D)变量的类型确定了变量的取值范围答案:A,const关键字表示常量,只能定义常量,不能定义变量。
4.若有定义:int i=3,k;则语句k=(i--)+(i--);运行后k的值是()。
A)4 B)5 C)6 D)7答案:C,两个i—都是3,最后答案就是65.若已定义:int a=5;float b=63.72;以下语句中能输出正确值的是( )。
A)printf(“%d %d”,a,b); B)printf(”%d %.2f”,a,b);C)printf(”%.2f %.2f”,a,b); D)printf(”%.2f %d”,a,b);答案:B,注意到b是浮点型数据,不能用%d,AD就错了,而a是整形数据,不能用%f,C就错了,所以选B。
6. C语言中,能正确表示条件10<x<20的逻辑表达式是()。
A)10<x<20 B)x>10 || x<20 C)x>10 && <20 D)(x>10)&&(x<20)答案:D,重要考点,记住要用逻辑与7. 在下列运算符中,优先级最高的运算符是 ( ).A)<= B)!= C)! D)||答案:C,单目运算符优先级最高。
8. 下面关于switch语句的叙述中,错误的是()。
A)case后面的表达式可以是关系表达式B)switch语句是多分支选择语句C)每一个case后面的值必须互不相同,否则会出现互相矛盾的现象D)在执行一个case分支后,可用一个break语句使流程跳出switch语句答案:A,case后面只能是int或char型数据,不能是表达式。
1、设有数组的初始化定义如下:int a[5]={1,2,3};对该定义的正确理解是( B )。
A.将3个数依次赋给a[1 ]至a[3 ]B.将3个数依次赋给a[0 ]至a[2 ]C.将3个数依次赋给a[0 ]至a[3 ]D.因初值的个数小于数组长度,所以定义是错的2、下列选项中,值不等于0.5的表达式是( A)。
A.1/2B.1/2.0C.(float)1/2D.1.0/23、若有“float x=123.456; printf("%2.1f",x);”,则执行后的输出结果为( D )。
A.3.4B.3.5C.123.4D.123.54、能把ch中的大写字母转换为对应小写字母的表达式是( B )。
A.ch=ch-32B.ch-='A'-'a'C.ch+=-32D.ch-='a'-'A'5、以下对结构体变量成员num的非法引用是( B)。
struct person{ int age;intnum;}x,*p=&x;A.x.numB.person.numC.p->numD.(*p).num6、设有以下程序,则对循环次数描述正确的是( B )。
int k=10; while (k= =0) k=k-1;A. 执行10次循环B.不执行循环C.执行一次循环D.执行无限次循环7、设有如下程序,则输出结果是()。
int a=2,b=3,c=1;if (a>b)if (a>c) printf(“%d\n ”,a);else printf(“%d\n ”,b );printf(“Over!\n ”);A.2B.3C.Over!D.18、对二维数组a初始化为:int a[ ][2]={1,2,3,4,5,6};则a第一维的大小是()。
A.2B.3C.4D.不能确定9、若x、i、j、k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为()。
A.4B.16C.32D.5210、执行函数调用“fun('A')”得到的返回值为()。
int fun(char ch){ return(ch>='0'&&ch<='9'); }A.-1B.0C.1D.211、以下数组的定义形式正确的是()。
A.int k=5,a[k];B.int a[ ];C.char c[]={'a'};D.char a(10);12、若有语句“int a[10],*p=&a[2];”,则执行语句“p=p+4;”后,p指向的数组元素是()。
A.a[4]B.a[5]C.a[6]D.a[7]13、表示关系x<=y<=z的C语言表达式为()。
A.(x<=y)&&(y<=z)B.(x<=y)AND(y<=z)C.(x<=y<=z)D.(x<=y)&(y<=z)14、下面不正确的字符常量是()。
A.“c”B.‘\\’’C.‘’D.‘K’15、若有定义:char a; int b; float c; double d;,则表达式a*b+d-c值的类型为()。
A.floatB.doubleC.charD.int16、定义int a[9],*p=a;不能表示a[1] 地址的是()。
A.p+1B.a+1C.a-1D.&a[1]17、下列关于C程序的说法错误的是()。
A.一个程序必须有一个main函数B.函数体用一对花括号“{ }”来标识C.每个语句必须用分号结束D.main函数的类型必须是void18、下列选项中,不能作为C语言标识符的是()。
A.studentB.sumC.IntD.double19、if语句中的表达式()。
A.必须是逻辑表达式B.必须是关系表达式C.只能是逻辑表达式或关系表达式D.可以是任意的表达式20、要判断x是否满足表达式“-1≤x≤1”,正确的C语言表达式是()。
A.x>=-1||x<=1B.x>=-1&&x<=1C.-1<=x<=1D.-1≤x≤121、若有定义“float x,*p=&x;”,以下能正确输入一个值给x的语句是()。
A.scanf("%f",p);B.scanf("%lf",&p);C.scanf("%f",x);D.scanf("%lf",&x);22、以下选项中,对变量的定义和初始化正确的是()。
A.int a,p=&a;B.int a,*p=a;C.int a,*p=&a;D.int a,*p=*a;23、C语言中,若对函数类型未加显示说明,则函数类型隐含为()。
A.intB.doubleC.voidD.int *24、以下程序段的功能是()。
int a=5,b=9;a=a+b; b=a-b; a=a-b;A.把a和b从小到大排序交换a和b的值B.C.只是做了加、减运算,无特定功能D.求a、b的和与差25、关于形参的说法正确的是()。
A.形参用于接收主调函数传递的数据B.函数中可以定义与形参同名的变量C.形参的改变可以传递给实参D.不必分别指定每个形参的类型26、若有定义“char s1[20],s2[ ]="China";”,为使s1的值与s2相同,下列选项中正确的是()。
A.s1=s2;B.strcat(s1,s2);C.strcpy(s1,s2);D.strcpy(s2,s1);27、设有如下程序,则输出结果是()。
char s1[10]=“abcd”,s2[10]=“efg”; int k;for (k=0;s2[k]!=‘\0’;k++) s2[k]=s1[k];puts(s2);A.abcdefgB.efgabcdC.abcefgD.abc28、以下函数声明中,正确的是()。
A.intplay(a , b);B.int play(int a,b);C.intplay(int a,int b);D.play(a , b)29、下列关于函数的描述错误的是()。
A.c程序是由函数组成的B.c程序中的函数是各自独立的C.main函数可以调用其它的函数D.在main函数中可以嵌套定义别的函数30、下列变量名定义不正确的是()。
A.a4B.d#C._varD._2f31、C语言可以用来实现循环的结构化语句是、和。
32、C语言程序的基本单位是函数,C语言程序从main()开始执行。
33、字符串以___\0___作为结束标记。
34、结构化程序的三种基本控制结构是顺序结构、_____选择_______结构和循环结构。
35、若有定义“int a[3][4];”,则该数组的最后一个元素是_a[2][3]___________。
36、若要定义一个符号常量PI表示π,请补充该预处理命令:___#define____ PI 3.1437、算法的表示方法一般有自然语言表示法、传统流程图、NS图、伪代码等。
38、C语言中的基本数据类型有、整型、字符和实型。
39、若有定义“int a[ ][4]={{1, 2}, {0, 3, 4},{5}} ;”,则数组a[1][3]的值为0。
40、只有一个“;”组成的语句,称为______空语句。
41、 char c[8]=”hello”;则该字符串的长度为___5_____。
42、C语言中的换行符是_____\0_______。
43、若a是int型变量,则计算表达式a=25/3%3后,a的值为2 。
44、用关键字__________来定义一个实型变量。
45、若有定义:int w[10]={1,2,3,4,5,6,7,8,9,10},*p=w;,在不移动指针p 条件下,通过指针p引用值为98的数组元素的表达式是p[5]或*(p+5)。
46、下列输入语句要给int型变量a输入一个值:scanf("%d", ____&a________);47、专门用来存放其它变量地址的一种特殊变量称为__指针__________变量。
48、下面程序是计算1、4、7 …… 100之和,请填空。
<=100, s=s+i#include <stdio.h>void main ( )main(){ints,i;s=0;for(i=1;;i+=3);printf("s=%d\n",s);}49、下面程序是将10个数按从小到大的顺序排序,请填空。
i=9-I, a[i]=a[i+1]#include <stdio.h>void main ( ){ int a[10]; inti,j,t;printf("input 10 numbers :\n");for (i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;;i++)if (a[i]>a[i+1]){t=a[i];;a[i+1]=t;}printf("the sorted numbers :\n");for(i=0;i<10;i++) printf("%d ",a[i]);printf("\n");}50、下面程序是从键盘输入一个大写字母,要求改用小写字母输出,请填空。
#include <stdio.h>void main ( ){char c1,c2;c1=getchar();printf("%c,%d\n",c1,c1);c2=c1+32;printf("%c,%d\n",c2,c2); }c1=getcher(), c2=ci+3251、下面程序是输入三个字符串,找出最小的并输出,请填空。
i<3, s2#include<stdio.h>#include<string.h>void main(){int i;char s1[3][10],s2[10];//数组s2用来存放最小字符串printf("Input 3 Strings:\n");for(i=0;;i++)gets(s1[i]);//输入三个字符串if(strcmp(s1[0],s1[1])>0)strcpy(s2,s1[1]);elsestrcpy(s2,s1[0]);if (strcmp(s2,s1[2])>0)strcpy(s2,s1[2]);printf("The leaf string is:%s\n",);}52、从键盘读入一个百分制成绩,将其转换为对应的五级制并输出。