C复习题.docx
- 文档编号:10155260
- 上传时间:2023-05-24
- 格式:DOCX
- 页数:18
- 大小:29.82KB
C复习题.docx
《C复习题.docx》由会员分享,可在线阅读,更多相关《C复习题.docx(18页珍藏版)》请在冰点文库上搜索。
C复习题
一、选择题〔每题3分,计60分〕
1、下面有关for循环的正确描述是〔D〕。
A.for循环只能用于循环次数已经确定的情况
B.for循环是先执行循环体语句,后判断表达式
C.在for循环中,不能用break语句跳出循环体
D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来。
2、以下能正确地定义整型变量a,b和c并为其赋初值5的语句是〔C〕
A.inta=b=c=5;B.inta,b,c=5;
C.inta=5,b=5,c=5;D.a=b=c=5;
3、逻辑运算符两侧运算对象的数据类型〔D〕
A.只能是0和1B.只能是0或非0的正数
C.只能是整型或字符型数据D.可以是任何类型的数据
4、以下运算符中优先级别最高的是〔B〕
A. 5、为了防止嵌套的if…else语句的二义性,c语言规定else总是与〔C〕组成配对关系。 A.缩排位置相同的ifB.在其之前未配对的if C.在其之前未配对的最近的ifD.同一行上的if 6、程序段如下: 那么以下说法中正确的选项是: 〔D〕。 intk=5; do { k--; }while(k<=0); A.循环执行5次B.循环是无限循环 C.循环体语句一次也不执行D.循环体语句执行一次 7、判断char型变量c1是否为小写字母的正确表达是〔D〕 A.‘a’<=c1<=’z’B.(c1>=a)&&(c1<=z) C.(‘a’>=c1)||(‘z’<=c1)D.(c1>=’a’)&&(c1<=’z’) 8、C语言中,char类型数据占〔A〕 A.1个字节B.2个字节C.4个字节D.8个字节 9、以下关于数组的描述正确的选项是〔C〕。 A.数组的大小是固定的,但可以有不同的类型的数组元素。 B.数组的大小是可变的,但所有数组元素的类型必须相同。 C.数组的大小是固定的,但所有数组元素的类型必须相同。 D.数组的大小是可变的,但可以有不同的类型的数组元素。 10、在定义inta[10];之后,对a的引用正确的选项是〔D〕。 A.a[10]B.a[6.3]C.a(6)D.a[10-10] 11、以下能正确定义数组并正确赋初值的语句是〔D〕。 A.intn=5,b[n][n];B.inta[1][2]={{1},{3}}; C.intc[2][]={{1,2},{3,4}}D.inta[3][2]={{1,2},{3,4}}; 12、在执行inta[][3]={1,2,3,4,5,6};语句后,a[1][0]的值是〔A〕。 A.4B.1C.2D.5 13、下面变量说明语句中,正确的选项是〔D〕 A.char.abc;B.chara;b;c; C.intx;zD.intx,y; 14、以下数据中,为字符串常量的是〔B〕 A.AB.“house〞C.Howdoyoudo.D.$abc 15、不仅可将C源程序存在磁盘上,还可将数据按数据类型分别以〔C〕形式存在磁盘上。 A.内存B.缓冲区C.文件D.存放器 16、x=43,ch=’A’,y=0;那么表达式(x>=y&&ch<’B’&&! y)的值是〔C〕。 A.0B.语法错C.1D.“假〞 17、C语言的注释界定符是〔D〕。 A.{}B.[]C.\**\D./**/ 18、假设inta,bscanf(“%d%d〞,&a,&b);不可以用〔A〕作为输入的分隔符。 A.,B.空格键C.回车D.Tab键 19、在C语言中,引用数组元素时,其数组下标的数据类型允许是〔B〕。 A.整型常量B.整型表达式C.整型变量D.任何类型表达式 20、C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符〔C〕 A.必须为字母B.必须为下划线 C.必须为字母或下划线D.可以是字母、数字和下划线中任一字符 21、以下四项中属于C语言关键字的是〔C〕 A.CharB.defineC.unsignedD.return 22、以下选项中属于C语言的数据类型是〔C〕 A.复数型B.逻辑型C.双精度型D.集合型 23、以下常数中不能作为C语言的常量的是〔C〕 A.0xA5-2C.3e2D.0582 24、能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否那么为追假〞的表达式是〔C〕 A.(x>=1)&&(x<=10)&&(x>=200)&&(x<=210) B.(x>=1)||(x<=10)||(x>=200)||(x<=210) C.(x>=1)&&(x<=10)||(x>=200)&&(x<=210) D.(x>=1)||(x<=10)&&(x>=200)||(x<=210) 25、设a=12,且a定义为整型变量。 执行语句a+=a-=a*=a;后a的值为〔C〕。 A.12B.144C.0D.132 26、以下程序段的输出结果是〔C〕。 inta=12345;printf(“%2d\n〞,a); A.12B.34C.12345D.提示错误,无结果 27、程序段如下: 那么以下说法中正确的选项是: 〔C〕。 intk=-20; while(k=0)k=k+1; A.while循环执行20次B.循环是无限循环 C.循环体语句一次也不执行D.循环体语句执行一次 28、C语言中用于结构化程序设计的三种根本结构是〔A〕。 A.顺序结构、选择结构和循环结构B.if、switch、break C.for、while、do-whileD.if、for、continue 29、以下表达中正确的选项是〔A〕 A.C程序中注释局部可以出现在程序中任意适宜的地方 B.花括号“{〞和“}〞只能作为函数体的定界符 C.构成C程序的根本单位是函数,所以函数名都可以由用户命名 D.分号是C语句之间的分隔符,不是语句的一局部 30、以下说法中正确的选项是〔C〕 A.C语言程序总是从第一个函数开始执行 B.在C语言程序中,要调用的函数必须在main〔〕函数中定义 C.C语言程序总是从main〔〕函数开始的执行 D.C语言程序中main〔〕函数必须放在程序的开始局部 31、以下说法中正确的选项是〔C〕 A.C程序书写时,不区分大小写字母 B.C程序书写时,一行只能写一个语句 C.C程序书写时,一个语句可分成几行书写 D.C程序书写时每行必须有行号 32、以下说法不正确的选项是〔C〕 A.一个C源程序可由一个或多个函数组成 B.一个C源程序必须包含一个main函数 C.在C程序中,注释说明只能位于一条语句的后面 D.C程序的根本组成单位是函数 33、以下关系运算符优先顺序描述中正确的选项是〔C〕 A.关系运算符<算术运算符<赋值运算符<逻辑运算符B.逻辑运算符<关系运算符<算术运算符<赋值运算符 C.赋值运算符<逻辑运算符<关系运算符<算术运算符D.算术运算符<关系运算符<逻辑运算符<赋值运算符 34、设x,y,z都是int型变量,且x=3,y=4,z=5,那么下面表达式中值为0的是〔D〕 A.‘x’&&’y’B.x<=y C.x||y+z&&! yD.! (x z||1) 35、选择中的条件与循环结构中循环成立的条件,在写法上可以是任一表达式,但其值只能被判断为“真〞或者“假〞。 哪个作为逻辑“假〞值〔D〕。 A.-1B.1C.非零的数D.0 36、字母A的ASCⅡ码为十进制数为65,且c2为字符型,那么执行语句c2=’A’+’6’-‘3’后,c2中的值为〔A〕 A.DB.68C.不确定的值D.C 37、在C语言中,int、char和short三种类型数据在内存中所占用的字节数〔D〕 A.由用户自己定义B.均为2个字符 C.是任意的D.由所用机器的机器字长所定 38、设C语言中,int类型数据占2个字节,那么long类型数据占〔C〕。 A.1个字节B.2个字节C.4个字节D.8个字节 39、以下标识符中,不能作为合法的C用户定义标识符的是〔C〕。 A.answerB.toC.signedD._if 40、下面不正确的字符串常量是〔A〕。 A.‘abc’B.“12’12”C.“0”D.““ 41、以下运算符中,优先级别最高的运算符是〔C〕。 A.*=B.>=C.〔类型〕D.+ 42、以下程序的输出结果是〔B〕 Main() {charc1=97,c2=98; Printf(“%d%c〞,c1,c2); } A.9798B.97bC,a98D,ab 43、putchar函数可以向终端输出一个〔D〕 A.整型变量表达式B.字符串 C.实型变量值D.字符或字符型变量值 44、用C语言编写的代码程序〔B〕 A.可立即执行B.是一个源程序 C.经过编译即可执行D.经过编译解释才能执行 45、以下不正确的C语言标识符是〔D〕 A.intB.a_1_2C.ablexeD.-x 46、假设希望当A值为奇数时,表达式的值为“真〞,A的值为偶数时,表达式的值为“假〞,那么以下不能满足要求的表达式是〔C〕 A.A%2==1B.! 〔A%2==0〕C.! 〔A%2〕D.A%2 12、设有: inta=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c A.0B.2C.3D.4 47、设x、y、z、t均为int型变量,那么执行以下语句后,t的值为〔C〕 x=y=z=1; t=++x||++y&&++z; A.不确定B.4C.3→1D.0 48、inta=1,b=2,c=3;以下语句执行后a,b,c的值是〔B〕 if(a>b) c=a;a=b;b=c; A.a=1,b=2,c=3B.a=2,b=3,c=3 C.a=2,b=3,c=1D.a=2,b=3,c=2 49、以下对一维数组a的定义中正确的选项是〔C〕。 A.chara(10); B.inta[0..100]; C.inta[5];D.intk=10;inta[k] 50、以下说法正确的选项是〔D〕。 A.输入项可以是一个实型常量,如scanf(“f〞,3.5); B.只有格式控制,没有输入项,也能进行正确输入,如scanf(“a=%d,b=%d〞); C.当输入一个实型数据时,格式控制局部应规定小数点后的位数,如scanf(“%〞,&f); D.当输入数据时,必须指明变量的地址,如scanf(“%f〞,&f); 二、填空题〔每空2分,计10分〕 1、假设有说明语句: intx=1,y=0;表达式(x<=y++)? ‘a’: ‘A’的结果是___A____。 2、在程序运行过程中,其值不能改变的量称之为______常量______,其值可以改变的量称之为_____变量________。 3、常用的循环结构语句有while、_____do-while_______和_______for_____。 4、赋值运算符的作用是将一个数据赋给一个______变量_______。 5、break语句只能用于______循环_______语句和______switch_______语句中。 6、在一个C源程序中,注释局部两侧的分界符分别是____/*____和___*/_____。 7、在C语言中,每个程序都必须有一个_______main______函数。 8、printf函数的“格式控制〞包括两局部,它们是_____格式说明符________和______普通字符_______。 9、条件运算符是C语言中唯一的一个____三_____目运算符,其结合性为_____左结合性________。 103_______。 11、一个合理的标识符只能由字母、数字和下划线组成,且第一个字符必须为____字母_________或______下划线_______。 12、在C语言中,字符型数据和整型数据之间可以通用,一个字符数据既能以_____字符________输出,也能以______整数_______输出。 13、在循环结构中,用于强制退出循环的语句是_____break________。 14、C语言程序的语句结束符是____;____。 三、读程序,写出运行结果。 〔每题5分,计10分〕 1、voidmain() { charch[3][5]={"AAAA","BBB","CC"}; printf("\"%s\"\n",ch[1]); } BBB回车 2、main() {charx=‘B’; switch(x) {case‘A’: printf(“ItisA.\n〞); case‘B’: printf(“ItisB.\n〞); case‘C’: printf(“ItisC.\n〞); default: printf(“other.\n〞); } } ItisB. ItisC. other. 3、#include main() {inti,m=1; for(i=5;i>=1;i--) { m=(m+1)*2; printf("m=%d\n",m); }} m=4 m=10 m=22 m=46 m=94 4、#include voidmain() {inti,j,m,n; i=8; j=10; m=++i; n=j++; printf("%d,%d,%d,%d\n",i,j,m,n); } 9,11,9,10 5、voidmain() {inta[3][3]={1,3,5,7,9,11,13,15,17}; intsum=0,i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) {a[i][j]=i+j; if(i==j) sum=sum+a[i][j];} printf("sum=%d",sum);} sum=6 6、以下程序段执行后k值为。 intk=0,i,j; for(i=0;i<5;i++) for(j=0;j<3;j++) k=k+1; 15 四、根据要求,编写程序。 〔每题10分,计20分〕 1、编写程序,用来判断某一年是否为闰年。 #include main() { inty; printf("Inputyear: "); scanf("%d",&y); if(y%400==0||y%4==0&&y%400==1) printf("ItisLeapYear! \n"); else printf("ItisnotLeapYear! \n"); } 2、求1! +2! +3! +……+n! #include main() { inti,j,n; longp=1,sum=0; printf("inputn="); scanf("%d",&n); for(i=1;i<=n;i++) { p=1; for(j=1;j<=i;j++) p*=j; sum+=p; } printf("1! +2! +3! +...+n! =%ld\n",sum); } 3、 #include main() { inti,j; longp=1,sum=0; for(i=1;i<=20;i++) { p=1; for(j=1;j<=i;j++) p*=j; sum+=p; } printf("1! +2! +3! +...+20! =%ld\n",sum); } 4、任意给定10个整数,由用户输入一个数,查找并统计这个数在这10个整数中出现的次数,并输出次数,假设未找到,那么显示未找到。 #include main() { inta[10]; inti,c,n=0; printf("Pleaseinputtennumbers: "); for(i=0;i<10;i++) scanf("%d",&a[i]); printf("Pleaseinputanumber: "); scanf("%d",&c); for(i=0;i<10;i++) if(c==a[i]) n++; if(n==0) printf("Notfound! \n"); else printf("n=%d\n",n); } 5、求100以内能被7整除的自然数之和。 #include main() { inti,sum=0; for(i=0;i<=100;i++) if(i%7==0) sum=sum+i; printf("sum=%d\n",sum); } 6、任意输入10个数构成一维数组,求其中的最大值和最小值。 #include main() { inta[10],max,min,i; printf("Pleaseinputtennumbers: "); for(i=0;i<10;i++) scanf("%d",&a[i]); max=min=a[0]; for(i=0;i<10;i++) {
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 复习题
![提示](https://static.bingdoc.com/images/bang_tan.gif)