C语言复习题 新 优质文档.docx
《C语言复习题 新 优质文档.docx》由会员分享,可在线阅读,更多相关《C语言复习题 新 优质文档.docx(32页珍藏版)》请在冰豆网上搜索。
![C语言复习题 新 优质文档.docx](https://file1.bdocx.com/fileroot1/2022-10/24/f6646907-3ee6-4a0e-b667-a155244fd275/f6646907-3ee6-4a0e-b667-a155244fd2751.gif)
C语言复习题新优质文档
C语言复习题新
一、选择
1.若有说明语句“inta[5],*p=a;”,则对数组元素的正确引用是。
A.a[p]B.p[a]C.*(p+2)D.p+2
2.在C语言中,以作为字符串结束标志
A.’\n’B.’’C.’0’D.’\0’
3.下列数据中属于“字符串常量”的是( A)。
A.“a”B.{ABC}C.‘abc\0’D.‘a’
4.对二维数组的正确定义是
A.inta[][]={1,2,3,4,5,6};B.inta[2][]={1,2,3,4,5,6};
C.inta[][3]={1,2,3,4,5,6};D.inta[2,3]={1,2,3,4,5,6};
5.若变量已正确定义并赋值,下面符合C语言语法的表达式是()。
A、a:
=b+1B、a=b=c+2C、int18.5%3D、a=a+7=c+b
6.C程序的基本结构单位是:
A、文件B、语句C、函数D、表达式
7.下面程序段中循环体的执行次数是:
inta=10,b=0;
do{
b+=2;a-=2+b;
}while(a>=0);
A、1B、2C、3D、4
8.以下可用作C语言用户合法的标识符的是:
A、B.C.TomB、3a6bC、_6a7bD、$ABC
9.已有定义:
intx=3,y=4,z=5;,则表达式!
(x+y)+z-1&&y+z/2的值是:
A、6B、0C、2D、1
10.若有以下程序段intc1=1,c2=2,c3;c3=1.0/c2*c1;,则执行后,c3中的值是()。
A、0B、0.5C、1D、2
11.设整型变量a=2,则执行下列语句后,浮点型变量b的值不是0.5的是()。
A、b=1.0/aB、b=(float)(1/a)C、b=1/(float)aD、b=1/(a*1.0)
12.已知charx[]="hello",y[]={'h','e','a','b','e'};,则关于两个数组长度的正确描述是()。
A、相同B、x大于yC、x小于yD、以上答案都不对
13.以下选项中,不能作为合法常量的是()。
A、1.234e04B、1.234e0.4C、1.234e+4D、1.234e0
14.C语言中运算对象必须是整型的运算符是()。
A、%=B、/C、=D、<=
15.以下能够正确定义函数首部的形式是。
A、doublefun(intx,inty)B、doublefun(intx;inty)
C、doublefun(intx,inty);D、doublefun(intx,y);
16.语句a=25.0+60.0*n/scale+2;,如果n=6.0,scale=2.0,则该语句最后的运行结果a值是()。
A、257B、194.5C、207.0D、96.25
17.下列关键字,哪个是双精度数据类型的关键字()。
A、intB、floatC、doubleD、char
18.若有说明:
inta[][3]={{1,2,3},{4,5},{6,7}};则数组a的第一维的大小为:
A.2B.3C.4D.无确定值D)9
19.下列哪个是命名正确的变量名()。
A、7numB、studentC、#NoD、float
20.C语言中规定函数的返回值的类型是由:
A、return语句中的表达式类型所决定B、调用该函数时的主调用函数类型所决定
C、调用该函数时系统临时决定D、在定义该函数时所指定函数类型决定
21.为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:
else子句总是与其配对的是:
A、其之后最近的ifB、其之前最近的if
C、缩排位置相同的ifD、同一行上的if
22.若有语句int*p,a=4;p=&a,下面均代表地址的一组选项是:
A、a,p,*&aB、&*a,&a,*pC、*&p,*p,&aD、&a,&*p,p
23.下列关于C语言的说法错误的是()。
A、C程序的工作过程包括编辑、编译、链接、运行
B、C语言不区分大小写
C、C程序中使用数组存储字符串,数组的单元数至少应该比要存储的字符数多1
D、C程序中必须有一个main()函数
24.在C语言程序中,表达式5%2的结果是()。
A、2.5B、2C、1D、3
25.下列说法错误的是。
A、在C语言中,break语句用于提前终止循环
B、在C语言中,continue语句只能用于switch语句和循环语句中
C、在C语言中,continue语句用于提前结束本次循环
D、在C语言中,break语句只能用于switch语句和循环语句中
26.已知:
inta=2,b=3;,则执行表达式c=b*=a-1后,变量c的值为:
A、5B、3C、2D、4
27.在C语言中,以( )作为字符串结束标志。
A、\nB、\sC、\aD、\0
28.在C语言中对一维整型数组的正确定义为。
A)inta(10);B)intn=10,a[n];
C)intn;a[n];D)#defineN10
inta[N];
29.下面()表达式的运算结果是4。
A、11/3 B、11.0/3 C、(float)11/3 D、(int)(11.0/3+0.5)
30.下列数据中属于“字符串常量”的是( )
A、“a”B、23C、‘abc\0’D、‘a’
31.语句while(!
E);中的表达式!
E等价于:
A、E==0B、E!
=1C、E!
=0D、E==1
32.下面程序的运行情况是:
chara[3],b[]="abcde";
a=b;
printf("%s",a);
A、运行后将输出abcdeB、运行后将输出abC、运行后将输出abcD、编译时出错
33.假设a=1;b=2;c=2;下面程序段的运行结果是:
while(a
{t=a;a=b;b=t;c--;}
printf(“%d,%d,%d”,a,b,c);
A、1,2,0B、2,1,0C、1,2,1D、2,1,1
34.对于while语句,错误的说法是( )。
A、用条件控制循环体的执行次数B、循环体至少要执行一次
C、循环体有可能一次也不执行 D、循环体中可以包含若干条语句
35.C语言的if语句中,用作判断条件的表达式为:
A、任意表达式B、关系表达式C、算术表达式D、逻辑表达式
36.sizeof(float)是:
A、一个整型表达式B、一个双精度型表达式C、一种函数调用D、不合法
37.putchar函数可以向终端输出一个:
A、实型变量值B、字符或字符型变量值C、整型变量表达式值D、字符串
38.下面语句中,错误的是:
A、inti;int*p;p=&i; B、inti,*p;p=&a; C、inti,*p=&a; D、inti,*p;*p=i;
39.在说明语句:
int*f();中,标识符代表的是:
。
A、一个用于指向整型数据的指针变量B、一个用于指向一维数组的指针
C、一个用于指向函数的指针变量D、一个返回值为指针型的函数名
40.在函数调用时,以下说法正确的是。
A、函数调用后必须带回返回值B、实际参数和形式参数可以同名
C、函数间的数据联系不能使用全局变量D、主调函数和被调函数总是在同一个文件里
41.若有如下定义:
chara;intb;floatc;doubled;则表达式a*b+d-c值的类型为:
A、floatB、intC、charD、double
42.以下能正确进行字符串赋值操作的是。
A、chars[5]={"12345"};B、chars[5]={'1','2','3','4','5',‘6’};
C、char*s;*s="12345";D、char*s="12345";
43.定义了int型二维数组a[6][7]后,如果是行优先存储,则数组元素a[3][4]前的数组元素个数为。
A、24 B、25 C、18 D、17
44.关于创建函数的目的,以下正确的说法是:
A、提高程序的执行效率B、提高程序的可读性
C、减少程序的篇幅D、减少程序文件所占内存
45.在C语言中,函数的数据类型是指
A函数返回值的数据类型B.函数形参的数据类型
C调用该函数时的实参的数据类型D.任意指定的数据类型
46.下列四组选项中,正确的C语言标识符是。
A、%xB、a+bC、a123D、123
47.下列四组字符串中都可以用作C语言程序中的标识符的是。
A、print_3ddb8aBcB、I\amone_halfstart$it3pai
C、str_1CpppowwhileD、PxqMy->bookline#His.age
48.在C语言程序中,表达式5%2的结果是。
A、2.5B、2C、1D、3
49.若“intn;floatf=13.8;”,则执行“n=(int)f%3”后,n的值是
A.1B.4C.4.333333D.4.6
50.一个C程序的执行是从:
A、本程序文件的main函数开始,到本程序文件的最后一个函数结束
B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C、本程序的main函数开始,到main函数结束
D、本程序文件的第一个函数开始,到本程序的main函数结束
51.若给定条件表达式(M)?
(a++):
(a--),则期中表达式(M):
A、和(M==0)等价B、和(M==1)等价C、和(M!
=0)等价D、和(M!
=1)等价
52.以下对一维数组a的正确说明是:
D
A、chara(10);B、inta[];
C、intk=5,a[k];D、chara[3]={‘a’,’b’,’c’};
53.设char*s="\ta\017bc";则指针变量s指向的字符串所占的字节数是:
A、5B、6C、7D、9
54.调用语句“func((exp1,exp2),(exp3,exp4,exp5));”中含有个实参。
A、2B、3C、4D、1
55.若有定义“inta[10];”,则对a数组元素的正确引用是:
A、a[10]B、a[10-10]C、a(5)D、a[3.5]
56.下面程序段的运行结果是:
charc[5]={‘a’,’b’,’\0’,’c’,’\0’};
printf(“%s”,c);
A、'a''b'B、abC、ab□cD、abc
57.语言规定,在一个源程序中,main函数的位置:
A、必须在最开始B、必须在系统调用的库函数的后面
C、可以任意D、必须在最后
58.能够完