C语言补充材料.docx
- 文档编号:7950126
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:47
- 大小:66.67KB
C语言补充材料.docx
《C语言补充材料.docx》由会员分享,可在线阅读,更多相关《C语言补充材料.docx(47页珍藏版)》请在冰豆网上搜索。
C语言补充材料
选择题
一、基础知识
1.下列叙述错误的是()
A)一个C语言程序只能有一个有一个main()函数
B)一个C语言程序可以有多个main()函数
C)C语言程序一条语句可以分写在多行
D)C语言程序一行内可以有多条语句
2.结构化程序设计采用的方法不包括()。
A)自顶向下、逐步细化
B)封装、继承和多态
C)结构化编码
D)模块化设计
3.C语言的数据类型不包括()。
A)整型B)泛型
C)结构类型D)联合类型
4.若已定义:
intx=2,y=3,z=5;则表达式值为2的是()。
A)z=x,z
B)x=y=z
C)x+y+z
D)z=(x,z)
5.若已定义;inta=1,b=2;()是正确的表达式
A)a*=b+2
B)a+b=2
C)a+b*=2
D)a+/b=2
6.若已定义:
inti=1;则表达式i+=10的值为()。
A)11B)2C)10D)1
7.若已定义:
intx;拟从键盘输入一个值赋予x,正确的函数调用是()。
A)scanf(“%d”,&x);
B)scanf(“%d”,x);
C)scanf(“%f”,&x);
D)scanf(“%f”,x);
8.若已定义:
intt,a,b;语句t=(a=5,b=a++);执行后,变量t、a、b的值依次为()。
A)5,6,6B)6,6,6
C)5,6,5D)6,6,5
9.若已定义;inta=1,b=2,c=3;表达式值为0的是()
A)ab>a
B)a+b==c||b==c
C)a+b&&a+c
D)ab>a
10.若已定义;inta=1,b=2,c=3;则表达式a=b==c的值为()。
A)2B)1C)3D)0
11.若已定义:
inta=1,b=2,c=3;
语句(++b,a)||(a++,c++);执行后变量a、b、c的值分别是()。
A)233
B)123
C)133
D)234
12.若已定义:
inta=3,b=2,c=1,t;
语句t=++a||!
b&&c++;执行后a、b、c的值分别是()。
A)321
B)402
C)422
D)421
13.若已定义:
charc;inta;floatx;doublem;则表达式0.3+a+c+x+m*a值的数据类型为()。
A)charB)double
C)floatD)int
14.若已定义:
inta=3,b=2,c=1;则表达式a+b&&c+100的值是()。
A)1B)0C)104D)105
15.若已定义:
inta=5,b=6;语句printf(“%d*%d=%d\n”,a+a,b+b,(a+a)*(b+b));执行后的输出结果是();
A)10,12,120B)5,6,30
C)5*6=30D)10*12=120
16.若已定义:
int m=3,n=4;则表达式(m++)+n的值是()。
A)5B)4C)8D)7
17.若已定义:
inta=3,x=4;语句x+=a++;执行后变量x的值为()。
A)7B)4C)8D)6
18.若已定义:
inta=1,b=2,c=3;则正确的表达式是()。
A)c=(a,b)B)a+b=c
C)a=b+3=cD)a=b\c
19.()为合法用户标识符。
A)_abcB)void
C)3cD)_a$bc
20.()为合法的常量。
A)0x100B)0783
C)’Cprogram’D)2E3.3
21.C语言程序中的函数是由()组成。
A)返回值类型和函数名
B)函数名和函数体
C)函数名和参数
D)函数首部和函数体
22.若已定义:
inta=5;则表达式a-=a+=a*a的值为()。
A)-20B)-25C)0D)25
23.要使语句scanf(“%d,%d”,&m,&n);能够正确接收从键盘输入的值,正确的数据输入形式是()。
A)10,20B)10
20
C)1020D)1020
24.若已定义:
charc;则()是错误的赋值表达式。
A)c=’a’B)c=097
C)c=’\n’D)c=32
25.能正确表示数学关系式“
或
”的C语言表达式是()
A)(k<=0)&&(k>=10)B)(k>=0)||(k<=10)
C)(k<=0)||(k>=10)D)(k>=0)&&(k<=10)
26.以下程序段执行后变量a的值为()。
intx=6,y=4,z=8,m;
m=(x (x x: z): (y y: z); A)4B)6C)8D)1 27.TurboC中,占用内存空间最大的是()。 A)charB)int C)doubleD)float 28.TurboC中,每个signedshortint型数据占用的内存空间为()字节。 A)2个B)4个 C)8个D)1个 29.下列关于C语言程序的叙述错误的是()。 A)一个C语言程序由一个或多个函数组成 B)注释内容必须放在/*和*/之间 C)编译时注释部分的错误会被发现 D)可以在“{}”内写若干语句,构成复合语句 30.若已定义: intx=100;则正确的赋值表达式是() A)x=’A’B)x%=0.3 C)x=x+08D)x=”abc” 31.若已定义: inta=3,b=2,c=1;则表达式(float)(a+b)/(c+a)的值是() A)1B)1.25C)8D)3.0 32.若已定义;charc=’E’;inta=9;floatx=5;则表达式c/x-a的值是() [已知’A’的ASCII码值为65] A)13.8B)4C)5D)4.8 33.以下程序段是运行结果是() intm=65,n=66; chark=‘c’; printf(“%c-%c-%d\n”,m,n,k); (注;字母‘A’的ASCII值为65) A)6566C B)A-B-67 C)65-66-C D)AB67 34.下列叙述错误的是()。 A)程序中算术表达式的书写形式与数学公式完全相同。 B)整型与字符型变量混合运算的结果是整型。 C)赋值运算符的结合方向为“自右向左”。 D)自增与自减运算符可以用于float型变量。 二、选择结构、循环结构 35.结构化程序设计的3种基本结构是顺序结构、()和循环结构。 A)递归结构B)嵌套结构 C)选择结构D)逻辑结构 36.以下程序的运行结果是()。 #include voidmain() {inta=4,b=3,c=2,d=1; if(a>b>c) printf(“%d\n”,d); elseif(c-1>=d) printf(“%d\n”,d+1); else printf(“%d\n”,d+2); } A)1B)3C)2D)4 37.若已定义intk,a,b,c;则语句()与k=a>b? b: c语句的功能等价。 A)if(a>b)k=b; B)if(k==a)k=b; elsek=c; C)if(a>b)k=b; elsek=c; D)if(a>b)k=a; elsek=b; 38.以下程序段,()。 inta=0; do {++a; }while (1); A)循环体执行2次 B)有语法错误 C)是无限循环 D)循环体执行1次 39.以下程序段执行后变量a的值为()。 inti,a=0; for(i=1;i<=10;i++) {if(i%2==0) continue; a++;++a; } A)5B)10C)0D)15 40.以下程序段中循环体的执行次数是()。 inti=0,a=0; for(i=i+3;i<10;i++) {if(a%3==0) break; a++; } A)10B)3C)1D)7 41.以下程序段执行后变量a的值为()。 inti=0,a=0; for(;i-3;i++) a++; A)1B)3C)2D)0 42.以下程序执行时,循环体执行了() #include voldmain() {inta=1234,b=0; while(a) {b=b*10+a%10; a=a/10; } printf(“b=%d\n”,b); } A4次B3次C2次D无限次 43.执行以下程序,输入99,运行结果是()。 #include voidmain() {intscore; scanf(“%d”,&score); switch(score/10) {case10: case9: printf(“A”); case8: printf(“B”); case7: case6: printf(“C”); break; default: printf(“D”); } printf(“\n”); } A)ABCB)ABCD C)ABD)A 44、以下程序的运行结果是()。 #include voidmain() {charc=’C’; switch(c-65) {case0: putchar(c+1); break; case1: case2: case3: putchar(c+2); break; default: putchar(c+32); break; } } [已知’A’的ASCII码值为65,’a’的ACSII码值为97] A)DB)CC)bD)E 三、数组 45.下列叙述正确的是()。 A)在定义数组时,数组的长度可以使用整型变量 B)在定义数组时,数组的长度不可以使用整型变量 C)数组元素的下标不能使用字符常量 D)数组元素的下标可以使用整型变量 46.以下程序段执行后,a[4]的值为()。 inta[8]={15,9,23,32,11}; a[4]=a[3]+a[2]+a[1]*a[6]-a[7]; A)64B)32C)55D)63 47.若已定义: inta[6]={1,2,3,4,5,6};charc=’b’;表达式值为3的是()。 A)a[3]B)a[‘d’-‘c’] C)a[c]D)a[‘d’-c] 48.若已定义: ints[4][3]={{1,6},{1}, {2,8,4},{7,3,5}};则s[3][1]的值是()。 A)3B)7C)2D)8 49.若已定义: inta[4][3];假设元素a[0][0]在存储空间中的位置序号为1,。 则元素a[2][2]的位置序号应是()。 A)10B)7C)9D)8 50.以下程序段的运行结果是()。 inta[10]={1,1,1,1,1,1,1,1,1,1,1,1,1},i; for(i=1;i<=5;i++) a[i-1]=a[i-1]-1; for(i=0;i<10;i++) printf(”%3d”,a[i]); A)0000000000 B)1111100000 C)1111111111 D)0000011111 51.以下程序段执行后s的值是()。 inta[3][4]={1,2,3,4,1,2,3,4,1,2,3,4}; inti,j,s=1; for(i=0;i<3;i++) for(j=0;j s*=a[i][j]; A)16B)12C)288D)144 52.以下程序段的运行结果是()。 chara[5]={65,’B’,67,68,69},I; for(i=4;i>=0;i-=2) a[i]=a[i]+32; for(i=0;i<5;i++) printf(”%3c”,a[i]); A)ABCDE B)AbCdE C)abcde D)aBcDe 53、以下程序段执行后sum的值是()。 inti,sum=0; inta[3][5]={11,12,13,14,15,16,17,18,19,20, 22,24,26,28,31}; for(i=0;i<3;i++) sum+=a[i][i+2]; A)58B)63C)61D)60 54.若已定义: charsa[20]={“dictionary”},sb[20]; 则()语句是正确的。 A)sb[0]=sa[0] B)sb[]=sa[]; C)printf(“%d”,sa[]); D)scanf(“%s“,&sb[]); 55、以下程序段的运行结果是()。 chara[5][3]={‘’Y’,’o’,’u’,’a’,’r’,’e’,’\0’,’w’,’e’,’l’,’c’,’o’,’m’,’e’}; printf(“%s”,&a[0][0]); A)YouB)Youare C)YouarewelcomeD)Youarewel 四、函数 56.puts(char*str)函数的功能是向终端输出()。 A)str指向的第一个字符 B)str指向的字符串 C)一个整数变量的值 D)一个实型变量的值 57.以下语句中fun()函数所含的实参个数有()个。 fun((1,2,3),(4,5),(6,7+8)); A)7B)5C)3D)8 58.以下程序段的运行结果是()。 chara[]=“Teacher”; charb[]=”Driver”; strcpy(a,b); printf(”%s%c”,a,a[5]); A)TeacherrB)Drivere C)TeachereD)Driverr 59.以下程序段的运行结果是()。 chars[80]={“super”}; strcat(s,“market”); printf(“%d”,strlen(s)); A)9B)12C)10D)11 60.以下程序段的运行结果是() intx=5; char*s1=“music”,*s2=s1; x=strcmp(s1,s2); printf(“%d\n”,x); A)-1B)5C)0D)1 61.以下程序的运行结果是()。 #include voidfun(inti) {inta; a=++i; printf(“%d”,a); } voidmain() {inta=3,b=6; fun(b); printf(“%d”,a); } A)73B)37 C)33D)77 62.以下程序的运行结果是() #include voidf(inta[][3]) {inti; for(i=0;i<3;i++) printf(“%2d”,a[i][0]); printf(“\n”); } voidmain() { inta[3][3]={1,2,3.1,3,2,2,1,3}; f(a); } A123B231 C112D323 63.以下程序的运行结果是()。 #include fun(intx,inty) {return(x*y+10); } voidmain() {inta=11,b=2,c; c=fun(a,b); printf(“c=%d\n”,c); } A)c=32B)22C)c=22D)32 64.以下程序的运行结果是()。 #include fun(intx) {staticinty=2; y=y+x; return(y); } voidmain() {inti,s=0; for(i=1;i<=2;i++) s=s+fun (2); printf(”%d\n”,s); } A)10B)6C)4D)8 65.下列叙述错误的是()。 A)宏定义中的符号常量(宏名)可以用小写字母表示 B)宏定义中的符号常量(宏名)只能用大写字母或数字字符 C)编译预处理命令行都必须以“#”开始 D)文件包含使用预处理命令“#include<文件名>”来实现 66.下列叙述正确的是()。 A)可以使用命令define定义变量 B)为区别语句结束符,编译预处理命令行必须以逗号结束 C)符号常量必须用大写字母表示 D)define是宏定义命令 67.下列正确定义符号常量的命令是()。 A)#definePR=3.3; B)#definePR3.3 C)#definePR3.3; D)#definePR=3.3 68.C源程序中,预处理命令的位置可以在()。 A)printf()函数中 B)putchar()函数中 C)scanf()函数中 D)文件首部 69.下列叙述错误的是() A)预处理命令行都必须以“#“号开始。 B)在预处理命令行#defineWT5中,符号变量(宏名)是WT C)#include“math.h”属于预处理命令 D)预处理命令只能位于C源程序文件的首部 五、指针 70.若已定义: int*p1,*p2;无意义的运算是()。 A)p1-p2B)p1>p2 C)p1+p2D)p1 71.若已定义: inta=3,*p;执行语句p=&a;后下列()均能表示a的地址。 A)*p,&aB)*p,a C)p,aD)p,&a 72.以下程序段的运行结果是() inta=5,b=2,c,*p1,*p2; p1=&a; p2=&b; if(*p1<*p2) c=*p1+2; else c=*p2+4; printf(“%d\n”,c); A)9B)4C)7D)6 73.以下程序段的运行结果是() inta=6,b=3,m,n,p,q; p=&a; q=&b; m=(*p)/(*q)+8; n=(*p)+(*q)*8; printf(“m=%d,n=%d\n”,m,n); A)m=8,n=80B)m=10,n=30 C)m=10,n=8D)m=8,n=30 74.以下程序段的运行结果是()。 inta[]={1,2,3,4,5,6,7,8,9,10},i; int*p; p=a; for(i=0;i<10;i++,i++) printf(“”%3d”,*(p+i)); printf(“\n”); } A)246810 B)678910 C)12345 D)13579 75.以下程序段的运行结果是()。 inta=1,b=2,sum,*p,*q; p=&a; q=&b; sum=*p+*q; a=*q; printf(“%d,%d\n”,a,sum); A)2,4B)1,4C)2,3D)1,3 76、以下程序段的运行结果是()。 inta[6]={1,2,3,4,5,6}; int*p; p=a; *(p+3)+=3; printf(”%3d,%3d\n”,*p,*(p+3)); A)1,4B)4,4 C)1,7D)7,7 77.若已定义: chara[]=”student”,*p=a; 能正确指向存放字符’u’单元的表达式是()。 A)p+sB)*(p+2) C)*(a+s)D)a+2 78.以下程序段的运行结果是()。 chara[]=”WELL”,*p;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 补充 材料