复习题.docx
- 文档编号:6266002
- 上传时间:2023-05-09
- 格式:DOCX
- 页数:67
- 大小:40.63KB
复习题.docx
《复习题.docx》由会员分享,可在线阅读,更多相关《复习题.docx(67页珍藏版)》请在冰点文库上搜索。
复习题
一、判断题:
1.C程序的基本组成单位是函数
2.C程序可以由一个或多个函数组成
3.C语言可以不用编译就能被计算机识别执行
4.main()函数必须放在其它函数之前
5.每个C程序中都必须要有一个main()函数
6.在C程序中main()函数的位置是固定的
7.C程序中的main()函数必须放在程序的开始位置。
8.C语言编译时不检查语法
9.C程序中注释部分可以出现在程序中任意合适的地方
10.C程序中一行可以写多条语句
11.分号是C语句之间的分隔符,不是语句的一部分
12.花括号“{”和“}”只能作为函数体的定界符
13.C程序中的每行只能写一条语句
14.C程序的执行总是从main函数开始,在main函数结束
15.C程序的执行总是从main函数开始,在程序的最后一个函数中结束
16.++(i+1);是非法的赋值语句
17.用户标识符中不可以出现中划线,但可以出现下划线
18.用户标识符中可以出现下划线,但不可以放在用户标识符的开头
19.C语言中,Area与area是不同的标识符
20.C语言中有逻辑类型
21.int a=b=0;是正确的定义语句。
22.1.2E0.5是符合C语言语法的实型常量
23.假定x和y为double型,则表达式x=2,y=x+3/2的值是3.500000
24.可以用关系运算符对字符串的大小进行比较
25.两个字符串中的字符个数相同时才能进行字符串大小的比较
26.设有定义语句:
char b= '\123';则变量b包括4个字符
27.若有定义语句:
char s[10]="1234567\0\0";,则strlen(s)的值是9
28.a=b+c=1 是正确的赋值表达式
29.若变量a、i已正确定义,且i已正确赋值,则 a=a++=5; 是正确的赋值语句( )
30.除逗号运算符外,赋值运算符的优先级最低
31.C语言中,运算对象必须是整型数据的运算符是 %。
32.对于单目运算符++、--,它们的运算对象可以是任何变量和常量
33.表达式:
10!
=9的值是 true
34.表达式1||2||3||4的值是1。
35.若变量c为char类型,则表达式(c>= 'a')&&(c<= 'z') 能正确判断出c为小写字母
36.若变量c为char类型,则表达式 'a'<=c<= 'z' 能正确判断出c为小写字母
37.sizeof(float)的值是4
38.sizeof(double)是一种函数调用
39.if(x 40.if(x>y); 是正确的if语句。 41.用do-while语句构成的循环,在while后的表达式为零时结束循环 42.do-while语句构成的循环只能用break语句退出 43.对for(表达式1; ; 表达式3)可理解为 for(表达式1;0;表达式3) 。 44.break语句只能用于switch语句体中 45.continue语句的作用是: 使程序的执行流程跳出包含它的所有循环 46.在循环体内使用break语句和continue语句的作用相同 47.当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息 48.假定int类型变量占用两个字节,其有定义: int x[10]={0,2,4};,则数组x在内存中所占字节数是6 49.若有定义: int a[2][3];对a数组元素正确引用的是a[2][3] 50.若有说明int s[3][4]={0};则只有元素s[0][0] 可得到初值0。 51.不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值 52.字符型数组中可以存放字符串 53.可以对整型数组进行整体输入、输出 54.函数中的形式参数是局部变量 55.在不同的函数中可以使用相同名字的变量 56.在一个函数内定义的变量只在本函数范围内有效 57.函数的定义和函数的调用均可以嵌套 58.函数的定义可以嵌套,但函数的调用不可以嵌套 59.函数的形参和实参分别占用不同的存储单元 60.C语言中,每个函数都可以被其它函数调用(包括main函数) 61.C语言中,在一个函数内部可以定义另一个函数 62.实参和与其对应的形参共同占用一个存储单元 63.只有当实参和与其对应的形参同名时才共占用存储单元 64.若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,B)));在此函数调用语句中实参的个数是6 65.用户定义的函数中可以没有return语句 66.用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值 67.当调用函数时,实参是一个数组名,则向函数传送的是数组的首地址 68.若用数组名作为实参,则传递给形参的是数组中全部元素的值。 69.C语言中形参的默认存储类别是自动(auto)。 70.C语言中,宏替换没有数据类型限制 71.C语言中,宏名必须用大写字母表示 72.C程序对预处理命令行的处理是在程序执行的过程中进行的 73.两个字符串中的字符个数相同时才能进行字符串大小的比较 74.当调用函数时,实参是一个数组名,则向函数传送的是数组的首地址 75.break语句只能用于switch语句体中 76.C程序中的main()函数必须放在程序的开始位置。 77.if(x>y); 是正确的if语句。 78.++(i+1);是非法的赋值语句 79.若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,B)));在此函数调用语句中实参的个数是6 80.函数的形参和实参分别占用不同的存储单元 81.在不同的函数中可以使用相同名字的变量 82.表达式: 10! =9的值是 true 83.C语言中,宏替换没有数据类型限制 84.C程序中注释部分可以出现在程序中任意合适的地方 85.设有定义语句: char b= '\123';则变量b包括4个字符 86.用do-while语句构成的循环,在while后的表达式为零时结束循环 87.if(x 88.continue语句的作用是: 使程序的执行流程跳出包含它的所有循环 89.1.2E0.5是符合C语言语法的实型常量 90.若有定义语句: char s[10]="1234567\0\0";,则strlen(s)的值是9 91.若变量c为char类型,则表达式 'a'<=c<= 'z' 能正确判断出c为小写字母 92.可以用关系运算符对字符串的大小进行比较 93.每个C程序中都必须要有一个main()函数 94.函数的定义和函数的调用均可以嵌套 95.sizeof(float)的值是4 96.C语言中有逻辑类型 97.字符型数组中可以存放字符串 98.分号是C语句之间的分隔符,不是语句的一部分 99.C程序可以由一个或多个函数组成 100.若有说明int s[3][4]={0};则只有元素s[0][0] 可得到初值0。 101.用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值 102.C语言中,每个函数都可以被其它函数调用(包括main函数) 二、单选题 1.以下说法中正确的是() A)C语言程序总是从第一个的函数开始执行 B)在C语言程序中,要调用的函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分 2.下选项中不是C语句的是()。 A){inti;i++;printf(“%d\n”,i);} B); C)a=5,c=10 D){;} 3.以下选项中不能作为C语言合法常量的是 () A)'cd' B)0.1e+6 C)"\a" D)'\011' 4.若x,a,b和c均是int型变量,则执行表达式x=(a=1,b=2)后x的结果为()。 A)1 B)2 C)3 D)不确定 5.以下能正确定义整型变量a,b和c并为其赋初值1的语句是()。 A)inta=b=c=1; B)inta,b,c=1; C)a=b=c=1; D)inta=1,b=1,c=1; 6.字符串"\t\065\xff\n"中的字符数(不算’\0’)为() A)5 B)14 C)8 D)4 7.对两个静态函数A和B进行如下初始化: charA[]="ABCDEF"; charB[]={'A','B','C','D','E','F'}; 则下列叙述正确的是()。 A)A和B完全相同 B)A和B只是长度相等 C)A和B不相同,A是指针数组 D)A数组长度比B数组长 8.若有以下定义: chara;intb; floatc;doubled; 则表达式a*b+d-c值的类型为() A)float B)int C)char D)double 9.在C语言中,运算对象必须是整型数的运算符是() A)% B)/ C)%和\ D)** 10.有以下程序 main() {intx,y,z; x=y=1; z=x++,y++,++y; printf("%d,%d,%d\n",x,y,z); } 程序运行后的输出结果是 () A)2,3,3 B)2,3,2 C)2,3,1 D)2,2,1 11.以下选项中,当x为大于1的奇数时,值为0的表达式是() A)x%2==1 B)x/2 C)x%2! =0 D)x%2==0 12.以下程序的输出结果是()。 main() { intx=10,y=3; printf("%d\n",y=x/y); } A)0 B)1 C)3 D)不确定的值 13.若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是() A)-3 B)9 C)-12 D)6 14.有以下程序 main() { chara='a',b; printf("%c,",++a); printf("%c\n",b=a++); } 程序运行后的输出结果是 () A)b,b B)b,c C)a,b D)a,c 15.设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为() A)0 B)1 C)2 D)3 16.设x、y、t均为int型变量,则执行语句: x=y=3;t=++x||++y;后,y的值为() A)不定值 B)4 C)3 D)1 17.有以下程序段 intk=0 ; while(k=1)k++; while循环执行的次数是() A)无限次 B)有语法错,不能执行 C)一次也不执行 D)执行1次 18.能正确表示逻辑关系“a>=10或a<=0”的C语言表达式是() A)a>=10ora=10 B)a>=0|a<=10 C)a>=10&&a<=0 D)a>=10||a<=0 19.表示关系x≤y≤z的c语言表达式为() A)(x<=y)&&(y<=z) B)(x<=y)AND(y<=z) C)(x<=y<=z) D)(x<=y)&(y<=z) 20.设有: inta=1,b=2,c=3,d=4,m=3,n=3;执行(m=a>b)||(n=c>d)后n的值为()。 A)0 B)1 C)2 D)3 21.以下关于逻辑运算符两侧运算对象的叙述中正确的是 () A)只能是整数0或1 B)只能是整数0或非0整数 C)可以是结构体类型的数据 D)可以是任意合法的表达式 22.若x和y都是int型变量,x=100,y=200,且有下面的程序片段: printf("%d",(x,y)); 上面程序片段的输出结果是() A)200 B)100 C)100200 D)输出格式符不够,输出不确定的值 23.在函数调用过程中,如果函数funA调用了函数funB,函数funB又调用了函数funA,则() A)称为函数的直接递归调用 B)称为函数的间接递归调用 C)称为函数的循环调用 D)C语言中不允许这样的递归调用 24.以下程序的输出结果是() main() {intk=17; printf("%d,%o,%x\n",k,k,k); } A)17,021,0x11 B)17,17,17 C)17,0x11,021 D)17,21,11 25.x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是()。 A)INPUTx、y、z; B)scanf("%d%d%d",&x,&y,&z); C)scanf("%d%d%d",x,y,z); D)read("%d%d%d",&x,&y;&z); 26.有以下程序 main() { inti; for(i=0;i<3;i++) switch(i) { case0: prinft("%d",i); case2: prinft("%d",i); default: prinft("%d",i); } } 程序运行后的输出结果是() A)022111 B)021021 C)000122 D)012 27.C语言中用于结构化程序设计的三种基本结构是() A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue 28.在嵌套使用if语句时,C语言规定else总是 () A)和之前与其具有相同缩进位置的if配对 B)和之前与其最近的if配对 C)和之前与其最近的且不带else的if配对 D)和之前的第一个if配对 29.设有以下程序片段: switch(X) { case'A': printf("A"); case'B': printf("B"); default: printf("error"); } 假设X='A',程序输出结果是() A)A B)B C)error D)ABerror 30.读程序: main() {intnum=0; while(num<=2) {num++;printf("%d",num);} } 上面程序的输出结果是() A)1 B)22 C)123 D)1234 31.以下程序段的执行结果是()。 intx=5; do{printf("%2d\n",x--);} while(! x); A)5 B)无任何输出 C)4 D)陷入死循环 32.设变量已正确定义,则以下能正确计算f=n! 的程序段是 () A)f=0; for(i=1;i<=n;i++)f*=i; B)f=1; for(i=1;i C)f=1; for(i=n;i>1;i++)f*=i; D)f=1; for(i=n;i>=2;i--)f*=i; 33.以下程序的输出结果是()。 main() { inta,b; for(a=1,b=1;a<=100;a++) { if(b>=10)break; if(b%3==1) { b+=3; continue; } } printf("%d\n",a); } A)101 B)6 C)5 D)4 34.下列合法的数组定义是()。 A)inta[]="string"; B)inta[5]={0,1,2,3,4,5}; C)chara="string"; D)chara[]={0,1,2,3,4,5}; 35.以下定义语句中,错误的是() A)inta[]={1,2}; B)char*a[3]; C)chars[10]="test"; D)intn=5,a[n]; 36.以下正确的数组定义语句是()。 A)inty[1][4]={1,2,3,4,5}; B)floatx[3][]={{1},{2},{3}}; C)longs[2][3]={{1},{1,2},{1,2,3}}; D)intm[1][4]={4}; 37.以下程序的输出结果是()。 main() { inti,a[10]; for(i=9;i>=0;i--) a[i]=10-i; printf("%d%d%d",a[2],a[5],a[8]); } A)258 B)741 C)852 D)369 38.若有定义语句: inta[3][6];,按在内存中的存放顺序,a数组的第10个元素是() A)a[0][4] B)a[1][3] C)a[0][3] D)a[1][4] 39.以下数组定义中不正确的是() A)inta[2][3]; B)intb[][3]={0,1,2,3}; C)intc[100][100]={0}; D)intd[3][]={{1,2},{1,2,3},{1,2,3,4}}; 40.以下程序的输出结果是()。 main() { inta[4][4]={{1,3,5},{2,4,6},{3,5,7}}; printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]); } A)0650 B)1470 C)5430 D)输出值不定 41.以下程序的输出结果是 () main() {charcf[3][5]={"AAAA","BBB","CC"}; printf("\"%s\"\n",cf[1]);; } A)"AAAA" B)"BBB" C)"BBBCC" D)"CC" 42.设有数组定义: chararray[]="China";则数组array所占的空间为() A)4个字节 B)5个字节 C)6个字节 D)7个字节 43.以下选项中,不能正确赋值的是()。 A)chars1[10];s1="Ctest"; B)chars2[]={'C','t','e','s','t'}; C)chars3[20]="Ctest"; D)char*s4="Ctest\n"; 44.给出以下定义: charx[]="abcdfeg"; chary[]={'a','b','c','d','e','f','g'}; 则正确的叙述为()。 A)数组x和数组y等价 B)数组x和数组y长度相同 C)数组x的长度大于数组y的长度 D)数组x的长度小于数组y的长度 45.若要求从键盘读入含有空格字符的字符串,应使用函数 () A)getc() B)gets() C)getchar() D)scanf() 46.有语句: charstr1[10],str2[10]={"books"}; 则能将字符串books赋给数组str1的正确语句是()。 A)str1={"Books"}; B)strcpy(str1,str2); C)str1=str2; D)strcpy(str2,str1); 47.以下语句的输出结果是() printf("%d\n",strlen("\tc\065\xff\n")); A)5 B)14 C)8 D)输出项不合法,无正常输出 48.若有语句int*point,a=4;和point=&a;下面均代表地址的一组选项是()。 A)a,point,*&a B)&*a,&a,*point C)*&point,*point,&a D)&a,&*point,point 49.设已有定义: floatx;,则以下对指针变量p进行定义且赋初值的语句中正确的是() A)float*p=1024; B)int*p=(float)x; C)floatp=&x; D)float*p=&x; 50.设有语句: inta=1,b=2,*p1=&a,*p2=&b;以下可使指针p1指向变量b的赋值语句是()。 A)p1=*p2 B)*p1=p2 C)p1=p2 D)*p1=*p2 51.有以下程序 main() { inta[]={1,2,3,4,5,6,7,8,9,0},*p;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 复习题