C语言题库导出2.docx
- 文档编号:12287193
- 上传时间:2023-04-17
- 格式:DOCX
- 页数:23
- 大小:22.74KB
C语言题库导出2.docx
《C语言题库导出2.docx》由会员分享,可在线阅读,更多相关《C语言题库导出2.docx(23页珍藏版)》请在冰豆网上搜索。
C语言题库导出2
导出题库试题(101~200)
共计460道试题
188).两个指针变量不可以(A)。
A)、相加
B)、比较
C)、相减
D)、指向同一地址
189).若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是(C)。
A)、intp=&x;
B)、int*p=x;
C)、int*p=&x;
D)、*p=*x;
190).关于指针概念说法不正确的是(D)。
A)、一个指针变量只能指向同一类型变量
B)、一个变量的地址称为该变量的指针
C)、只有同一类型变量的地址才能放到指向该类型变量的指针变量之中
D)、指针变量可以由整数赋,不能用浮点赋
191).设有说明int(*ptr)[M];其中标识符ptr是(C)。
A)、M个指向整型变量的指针
B)、指向M个整型变量的函数指针
C)、一个指向具有M个整型元素的一维数组的指针
D)、具有M个指针元素的一维指针数组,每个元素都只能指向整型量
192).下面选择中正确的赋值语句是(设chara[5],*p=a;)(A)。
A)、p="abcd";
B)、a="abcd";
C)、*p="abcd";
D)、*a="abcd";
193).具有相同类型的指针变量p与数组a,不能进行的操作是(D)。
A)、p=a;
B)、*p=a[0];
C)、p=&a[0];
D)、p=&a;
194).若有下列定义,则对a数组元素地址的正确引用是(B)。
inta[5],*p=a;
A)、&a[5]
B)、p+2
C)、a++
D)、&a
195).若有下列定义和语句,则对a数组元素的非法引用是(B)。
inta[2][3],(*pt)[3];pt=a;
A)、pt[0][0]
B)、*(pt+1)[2]
C)、*(pt[1]+2)
D)、*(a[0]+2
196).若有下列定义,则对a数组元素地址的正确引用是(C)。
inta[5],*p=a;
A)、*(p+5)
B)、*p+2
C)、*(a+2)
D)、*&a[5]
197).以下程序段的输出结果是(D)。
char*alp[]={"ABC","DEF","GHI"};intj;puts(alp[1]);
A)、A
B)、B
C)、D
D)、DEF
198).设有以下语句,若0 charstr[4][2]={"aaa","bbb","ccc","ddd"},*strp[4];intj;for(j=0;j<4;j++)strp[j]=str[j]; A)、strp B)、str[k] C)、strp[k] D)、*strp 199).若有inta[][]={{1,2},{3,4}};则*(a+1),*(*a+1)的含义分别为(B)。 A)、非法,2 B)、&a[1][0],2 C)、&a[0][1],3 D)、a[0][0],4 200).若有定义: char*p1,*p2,*p3,*p4,ch;则不能正确赋值的程序语句为(C)。 A)、p1=&ch;scanf("%c",p1); B)、p2=(char*)malloc (1);scanf("%c",p2); C)、*p3=getchar(); D)、p4=&ch;*p4=getchar(); 201).当定义一个结构体变量时,系统分配给它的内存是(A)。 A)、各成员所需内存量的总和 B)、结构中第一个成员所需内存量 C)、结构中最后一个成员所需内存量 D)、成员中占内存量最大者所需的容量 202).设有如下定义: structsk{inta;floatb;}data,*p;若要使p指向data中的a域,正确的赋值语句是(A)。 A)、p=(structsk*)&data.a; B)、p=(structsk*)data.a; C)、p=&data.a; D)、*p=data.a; 203).以下对枚举类型名的定义中正确的是(B)。 A)、enuma={sum,mon,tue}; B)、enuma{sum=9,mon=-1,tue}; C)、enuma={"sum","mon","tue"}; D)、enuma{"sum","mon","tue"}; 204).在下列程序段中,枚举变量c1,c2的值依次是(A)。 enumcolor{red,yellow,blue=4,green,white}c1,c2;c1=yellow;c2=white;printf("%d,%d\n",c1,c2); A)、1,6 B)、2,5 C)、1,4 D)、2,6 205).变量p为指针变量,若p=&a,下列说法不正确的是(D)。 A)、&*p==&a B)、*&a==a C)、(*p)++==a++ D)、*(p++)==a++ 206).以下程序的输出结果是(B)。 main(B){chars[]="123",*p;p=s;printf("%c%c%c\n",*p++,*p++,*p++);} A)、123 B)、321 C)、213 D)、312 207).执行下列语句后的结果为(B)。 intx=3,y;int*px=&x;y=*px++; A)、x=3,y=4 B)、x=3,y=3 C)、x=4,y=4 D)、x=3,y不知 208).下列各m的值中,能使m%3==2&&m%5==3&&m%7==2为真的是(B)。 A)、8 B)、23 C)、17 D)、6 209).若有以下程序段: inta=3,b=4;a=a^b;b=b^a;a=a^b;则执行以上语句后,a和b的值分别是(B)。 A)、a=3,b=4 B)、a=4,b=3 C)、a=4,b=4 D)、a=3,b=3 210).在位运算中,操作数每右移一位,其结果相当于(B)。 A)、操作数乘以2 B)、操作数除以2 C)、操作数乘以16 D)、操作数除以16 211).fgets(str,n,fp)函数从文件中读入一个字符串,以下正确的叙述是(C)。 A)、字符串读入后不会自动加入'\0' B)、fp是file类型的指针 C)、fgets函数将从文件中最多读入n-1个字符 D)、fgets函数将从文件中最多读入n个字符 212).C语言中的文件类型只有(B)。 A)、索引文件和文本文件两种 B)、ASCII文件和二进制文件两种 C)、文本文件一种 D)、二进制文件一种 213).C语言中,文件由(D)。 A)、记录组成 B)、由数据行组成 C)、由数据块组成 D)、由字符(字节)序列组成 214).C语言中的文件的存储方式有(C)。 A)、只能顺序存取 B)、只能随机存取(或直接存取) C)、可以顺序存取,也可随机存取 D)、只能从文件的开头进行存取 431).下列程序的输出结果是(B)。 main(B){intx=1,y=0,a=0,b=0;switch(x){case1: switch(y){case0: a++;break;case1: b++;break;}case2: a++;b++;break;case3: a++;b++;break;}printf("a=%d,b=%d\n",a,b);} A)、a=1,b=0 B)、a=2,b=1 C)、a=1,b=1 D)、a=2,b=2 436).设j和k都是int类型,则下面的for循环语句(A)。 for(j=0,k=0;j<=9&&k! =876;j++)scanf("%d",&k); A)、最多执行10次 B)、最多执行9次 C)、是无限循环 D)、循环体一次也不执行 471).以下程序段char*alp[]={"ABC","DEF","GHI"};intj;puts(alp[1]);的输出结果是(D)。 A)、A B)、B C)、D D)、DEF 489).下列标识符中,不合法的C语言用户自定义标识符是(B)。 A)、printf B)、enum C)、_ D)、sin 490).以下字符中不是转义字符的是(C)。 A)、\a' B)、\b' C)、\c' D)、'\\' 491).下列程序段的输出结果为(B)。 floatk=0.8567;printf("%06.1d%%",k*100); A)、0085.6%% B)、0085.7% C)、0085.6% D)、.857 492).下列程序段的输出结果为(C)。 floatx=213.82631;printf("%3d",(int)x); A)、213.82 B)、213.83 C)、213 D)、3.8 493).C语言的注释定界符是(D)。 A)、{} B)、[] C)、\**\ D)、/**/ 495).下列字符序列中,是C语言保留字的是(A)。 A)、sizeof B)、include C)、scanf D)、sqrt 496).doublex;scanf("%lf",&x);不可以赋值给x变量的常量是(D)。 A)、123 B)、100000 C)、A' D)、"abc" 497).C语言能正确处理的指数是(C)。 A)、8.5e4288 B)、e-32 C)、123000000000 D)、4.5e-5.6 498).下列运算符中是C语言关系运算符的是(D)。 A)、~ B)、! C)、& D)、! = 499).以下常量中,能够代表逻辑“真”值的常量是(C)。 A)、\0' B)、0 C)、0' D)、NULL 500).下列程序段的输出结果为(C)。 intx=3,y=2;printf("%d",(x-=y,x*=y+8/5)); A)、1 B)、7 C)、3 D)、5 501).下列程序段的输出结果为(C)。 inta=7,b=9,t;t=a*=a>b? a: b;printf("%d",t); A)、7 B)、9 C)、63 D)、49 502).下列表达式中,可作为C合法表达式的是(B)。 A)、[3,2,1,0] B)、(3,2,1,0) C)、3=2=1=0 D)、3/2/1/0 503).以下语句中,不能实现回车换行的是(B)。 A)、printf("\n"); B)、putchar("\n"); C)、fprintf(stdout,"\n"); D)、fwrite("\n",1,1,stdout); 504).执行以下程序段后,输出结果和a的值是(B)。 inta=10;printf("%d",a++); A)、10和10 B)、10和11 C)、11和10 D)、11和11 505).以下语句中,循环次数不为10次的语句是(A)。 A)、for(i=1;i<10;i++); B)、i=1;do{i++;}while(i<=10); C)、i=10;while(i>0){--i;} D)、i=1;m: if(i<=10){i++;gotom;} 506).以下程序段的输出结果为(B)。 for(i=4;i>1;i--)for(j=1;j A)、无 B)、###### C)、# D)、### 507).以下程序段中,能够正确地执行循环的是(C)。 A)、for(i=1;i>10;i++) B)、staticinta;while(a) C)、ints=6;dos-=2;while(s); D)、ints=6;m: if(s<100)exit(0);elses-=2;gotom: 508).inta=1,b=2,c=3;if(a>c)b=a;a=c;c=b;则c的值为(B)。 A)、1 B)、2 C)、3 D)、不一定 509).inta=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为(A)。 A)、1 B)、2 C)、3 D)、不一定 510).inta=3,b=2,c=1;if(a>b>c)a=b;elsea=c;则a的值为(C)。 A)、3 B)、2 C)、1 D)、0 511).求平方根函数的函数名为(D)。 A)、cos B)、abs C)、pow D)、sqrt 512).while(fabs(t)<1e-5)if(! s/10)break;循环结束的条件是(A)。 A)、t>=1e-5&&t<=-1e-5&&s>-10&&s<10 B)、fabs(t)<1e-5&&! s/10 C)、fabs(t)<1e-5 D)、s/10==0 513).inta[10];合法的数组元素的最小下标值为(D)。 A)、10 B)、9 C)、1 D)、0 514).chara[10];不能将字符串"abc"存储在数组中的是(C)。 A)、strcpy(a,"abc"); B)、a[0]=0;strcat(a,"abc"); C)、a="abc"; D)、inti;for(i=0;i<3;i++)a[i]=i+97;a[i]=0; 515).inti,j,a[2][3];按照数组a的元素在内存的排列次序,不能将数1,2,3,4,5,6存入a数组的是(D)。 A)、for(i=0;i<2;i++)for(j=0;j<3;j++)a[i][j]=i*3+j+1; B)、for(i=0;i<3;i++)for(j=0;j<2;j++)a[j][i]=j*3+i+1; C)、for(i=0;i<6;i++)a[i/3][i%3]=i+1; D)、for(i=1;i<=6;i++)a[i][i]=i; 516).staticcharstr[10]="China";数组元素个数为(D)。 A)、5 B)、6 C)、9 D)、10 517).若chara[10];已正确定义,以下语句中不能从键盘上给a数组的所有元素输入值的语句是(D)。 A)、gets(a); B)、scanf("%s",a); C)、for(i=0;i<10;i++)a[i]=getchar(); D)、a=getchar(); 518).chara[]="Thisisaprogram.";输出前5个字符的语句是(A)。 A)、printf("%.5s",a); B)、puts(a); C)、printf("%s",a); D)、a[5*2]=0;puts(a); 519).inta[10];给数组a的所有元素分别赋值为1、2、3、……的语句是(B)。 A)、for(i=1;i<11;i++)a[i]=i; B)、for(i=1;i<11;i++)a[i-1]=i; C)、for(i=1;i<11;i++)a[i+1]=i; D)、for(i=1;i<11;i++)a[0]=1; 520).以下程序段的输出结果为(D)。 charc[]="abc";inti=0;do;while(c[i++]! ='\0');printf("%d",i-1); A)、abc B)、ab C)、2 D)、3 521).chara1[]="abc",a2[80]="1234";将a1串连接到a2串后面的语句是(A)。 A)、strcat(a2,a1); B)、strcpy(a2,a1); C)、strcat(a1,a2); D)、strcpy(a1,a2); 522).若有chars1[]="abc",s2[20],*t=s2;gets(t);则下列语句中能够实现当字符串s1大于字符串s2时,输出s2的语句是(D)。 A)、if(strcmp(s1,s1)>0)puts(s2); B)、if(strcmp(s2,s1)>0)puts(s2); C)、if(strcmp(s2,t)>0)puts(s2); D)、if(strcmp(s1,t)>0)puts(s2); 523).函数的形式参数隐含的存储类型说明是(D)。 A)、extern B)、static C)、register D)、auto 524).与实际参数为实型数组名相对应的形式参数不可以定义为(C)。 A)、floata[]; B)、float*a; C)、floata; D)、float(*a)[3]; 525).C语言中不可以嵌套的是(B)。 A)、函数调用 B)、函数定义 C)、循环语句 D)、选择语句 526).用户定义的函数不可以调用的函数是(C)。 A)、非整型返回值的 B)、本文件外的 C)、main函数 D)、本函数下面定义的 527).全局变量的定义不可能在(A)。 A)、函数内部 B)、函数外面 C)、文件外面 D)、最后一行 528).对于void类型函数,调用时不可作为(D)。 A)、自定义函数体中的语句 B)、循环体里的语句 C)、if语句的成分语句 D)、表达式 529).在C语言中,调用函数除函数名外,还必须有(C)。 A)、函数预说明 B)、实际参数 C)、() D)、函数返回值 530).C程序中的宏展开是在(C)。 A)、编译时进行的 B)、程序执行时进行的 C)、编译前预处理时进行的 D)、编辑时进行的 531).C语言中,定义结构体的保留字是(B)。 A)、union B)、struct C)、enum D)、typedef 532).结构体类型的定义允许嵌套是指(A)。 A)、成员是已经或正在定义的结构体型 B)、成员可以重名 C)、结构体型可以派生 D)、定义多个结构体型 533).对结构体类型的变量的成员的访问,无论数据类型如何都可使用的运算符是(A)。 A)、. B)、-> C)、* D)、& 534).相同结构体类型的变量之间,可以(B)。 A)、相加 B)、赋值 C)、比较大小 D)、地址相同 535).使用共用体变量,不可以(D)。 A)、节省存储空间 B)、简化程序设计 C)、进行动态管理 D)、同时访问所有成员 536).enuma{sum=9,mon=-1,tue};定义了(C)。 A)、枚举变量 B)、3个标识符 C)、枚举数据类型 D)、整数9和-1 537).在定义构造数据类型时,不能(D)。 A)、说明变量 B)、说明存储类型 C)、初始化 D)、末尾不写分号 538).位字段数据的单位是(C)位。 A)、十六进制 B)、八进制 C)、二进制 D)、十进制 539).C语言程序中必须有的函数是(B)。 A)、#include"stdio.h" B)、main C)、printf D)、scanf 540).指针变量p进行自加运算(即执行p++;)后,地址偏移值为2,则其数据类型为(A)。 A)、int B)、float C)、double D)、char 541).若有inti=3,*p;p=&i;下列语句中输出结果为3的是(C)。 A)、printf("%d",&p); B)、printf("%d",*i); C)、printf("%d",*p); D)、printf("%d",p); 542).若有int*p=(int*)malloc(sizeof(int));则向内存申请到内存空间存入整数123的语句为(A)。 A)、scanf("%d",p); B)、scanf("%d",&p); C)、scanf("%d",*p); D)、scanf("%d",**p); 543).若有inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则输出结果不为5的语句为(D)。 A)、printf("%d",*(a+5)); B)、printf("%d",p[5]); C)、printf("%d",*(p+5)); D)、printf("%d",*p[5]); 544).char*s1="hello",*s2;s2=s1;则(C)。 A)、s2指向不确定的内存单元 B)、不能访问"hello" C)、puts(s1);与puts(s2);结果相同 D)、s1不能再指向其它单元 545).charh,*s=&h;可将字符H通过指针存入变量h中的语句是(B)。 A)、*s=H; B)、*s='H'; C)、s=H; D)、s='H' 546).若有chara[80],*s=a;不正确的输入语句是(C)。 A)、scanf("%s",s); B)、gets(s); C)、fscanf(stdin,"%c",s); D)、fgets(s,80,stdin); 547).int(*p)[6];它的含义为(B)。 A)、具有6个元素的一维数组 B)、定义了一个指向具有6个元素的一维数组的指针变量 C)、指向整型指针变量 D)、指向6个整数中的一个的地址 548).char*match(charc)是(A)。 A)、函数定义的头部 B)、函数预说明 C)、函数调用 D)、指针变量说明 549).若有double*p,x[10];inti=5;使指针变量p指向元素x[5]的语句为(A)。 A)、p=&x[i]; B)、p=x; C)、p=x[i]; D)、p=&(x+i) 550).不仅可将C源程序存在磁盘上,还可将数据按数据类型分别以什么的形式存在磁盘上(C)。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 题库 导出