《C语言题库综合版》由会员分享,可在线阅读,更多相关《C语言题库综合版(39页珍藏版)》请在人人文库网上搜索。
1、C语言程序设计-上机实验1一填空题1、数字形式的指令码称为【机器】语言。 2、符号化的指令码就是【 汇编 】语言。 3、C语言程序包含多个源文件,编译时,VC分别对项目中的每个文件进行编译生成各自的【目标 】文件。 4、高级语言程序需要被编译器或编译程序【翻译 】成机器语言。 5、C语言的编程环境一般都具有编辑器、编译器和【 链接器 】。 6、C语言连接器把编译生成的目标代码、启动代码和【库函数】代码连接起来生成可执行程序EXE文件。 7、函数是C语言程序的【 基本模块】。 8、一个C语言程序总是从【 主函数 】开始执行。 9、stdio.h头文件包含了标准【 输入输出 】的声明。 10、C 。
2、语言中可以对程序进行注释,注释部分如果占多行,必须以【/* 】开始。11、和C+一样Java也是基于【C语言 】的。12、在16位系统中,int型数据占【 2】个字节。 13、C语言中,unsigned short int类型数据的最大值是【 65535 】。 14、scanf()和printf()是C语言中标准的格式输入输出【 函数 】。 15、一个C语言程序有且仅有一个【mian/主】函数。1、以下程序的输出结果是【 261 】。 int main() int a=177;printf(%on,a); 2、对软件设计总的要求是【 可读性 】第一,效率第二。 3、C语言是被称为【 系统设计 。
3、】语言。 UNIX LINUX4、赋值语句由【 赋值表达式 】加上分号构成。5、C语言预处理命令都是以【 # 】开头。 6、【 c# 】也是从C语言派生的。 7、int i=65; printf(%d,%c,i,i );的输出结果是【 65,A 】。 8、十进制数:65535 用八进制表示为【 】。 9、int a;float b;char c;若用逗号分隔各个数据,则用scanf(【 %d,%f,%c 】,&a,&b,&c); 10、float f=123.456; printf(%.2f,f);的输出结果是【 123.46 】。 11、有如下说明:long int k,在scanf语句的格。
4、式控制串中用【 %ld 】。12、有如下语句:int i=100; printf(%c,i);的输出结果是【 d 】。 13、若有语句 int a;a=A+1;printf(%cn,a);则输出值为【 B 】。 14、字符串ux52nq12p包含字符【 8 】个。15、int a; a=24/3%3; a的值为【 2 】。 1、有语句段:int i=1,x=5;printf(%d,x+i,+i);其输出结果是【 7 】。 2、若int k=7,请写出赋值表达式 k+=k的运算结果【 14 】。 3、若有以下定义:int a=10; unsigned int b=4; float x=2.5; 。
5、double d=2 .546;并已经分别赋值,则输出表达式a*b+x-d的值则scanf中的输出格式为【 double】。 4、若定义 int a;并执行:a=A+1.2;则a的值是字符A的ASCII码值加上【 1 】。 5、int a; a=24/3%3; a的值为【 2 】。 6、int a=3,b=-4,c=5;则表达式(a|b)=(a|c)的值是【 1 】。 7、若有语句int i=-19,j=i%4; printf(%dn,j);则输出的结果是【 -3 】。 8、表达式1/3*3的计算结果是【 0 】。 9、int x=10,y=3;printf(%d,%d ,-x,-y);则以上。
6、语句的输出结果是【 9 2 】。 10、表达式5%6的值是【 5 】。 1、设int n=2;n*=n;执行语句后,n的值是【 4 】。 2、有int x;float y=5.5;表达式x=(float)(int y)%4执行后,x的值为 【1 】。3、执行 int x; x=12.0*3/6;后,x的值是【 6 】 4、C语言中关系运算符有【6】个。 5、若有定义float x=2.0;int y=4,h=3;则表达式printf(%d,(x+y)*h)的值是【18】。 6、# include int main() int i=10,j=1; printf(%d,%dn,i-,+j); re。
7、turn 0;程序执行后输出的结果是【10 2 】。 7、#includeint main() int a=0;a+=(a=8); printf(%dn,a); return 0;程序的输出结果是【16 】。8、#includeint main() int a; scanf(%d;,&a);if(a50) printf(%d;,a);if(a40) printf(%d;,a);if(a30) printf(%d,a); return 0;若从键盘输入68,则以下程序输出的结果是【 68; 68; 68 】。9、#includeint main() int i;for(i=100;i=0;i-=。
8、10);printf(%dn,i); return 0; 程序的运行结果是【 -10 】。 10、若有程序段int a=37;a%=9; 则a的值是【1 】 1、鸡兔共有30只,脚共有90个,下面程序是计算鸡兔各有多少只,完善程序。#includevoid main() int x,y;for(x=1;xvoid main() int a=50,*p;p=&a;*p=100;printf(a=%dn,a); 程序的执行结果是【 50 】6、对于变量x,其地址可以写成【 *x 】。 7、若有int a=10,*p=&a; 执行(*p)+;后,a的值是【10 】8、若有定义int a10,*p=a。
9、;,则p+5表示【 a5 】。 9、与语句:char *p;p=wuhan;等价的语句是【 char 】二、选择题1、以下选项中不属于C语言的类型的是______B__。 A、unsigned intB、long shortC、unsigned long intD、signed short int2、以下选项中可作为C语言合法整数的是___A_____。 A、0XffaB、x2a2C、0386D、10110B3、已定义c为字符型变量,则下列语句中正确的是______A__。 A、c=97;B、c=a;C、c=97;D、c=97;4、下面四个选项中,均是C语言关键字的选项是____c____。 。
10、A、signed、union、scanfB、if、struet、typeC、switch、typedef、continueD、auto、enum、include5、以下正确的叙述是___b_____。 A、在C程序中,无论是整数还是实数,都能被准确无误地表示B、在C程序中,是只能用于整数运算的运算符C、若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数D、在C程序中,每行中只能写一条语句6、在C语言中,int、char和short三种类型数据在内存中所占用的字节数_____B____。 A、是任意的B、由所用机器的机器字长决定C、均为2个字节D、由用户自己定义7、设C语言中。
11、,一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为_____A___。A、065535B、0C、032767D、02558、以下能正确地定义整型变量a,b和c并为其赋初值5的语句是_____B___。 A、a=5,b=5,c=5;B、int a,b,c;a=b=c=5;C、int a,b,c=5;D、int a=b=c=5;9、不正确的C程序描述是哪一项。 B A)每个语句和数据定义的最后必须有个分号。B)一个C程序的书写格式要求严格,一行只能写一个语句。C)C语言的本身没有输入输出语句。D)一个C程序总是从main()函数开始执行。10、一个完整的C源程序包含。
12、哪一项。 B A)要由一个函数或一个以上的非主函数构成B)由一个且仅由一个主函数和零个以上(含零)的非主函数构成。C)要由一个主函数和一个以上的非主函数构成。D)由一个且只有一个主函数或多个非主函数构成。11、以下叙述中正确的是哪一项。 B A)C语言的源程序不必通过编译就可以直接运行。B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令。C)C源程序经编译形成的二进制代码可以直接运行。D)C语言中的函数不可以单独进行编译。12、C语言程序由下面哪一项组成。 C A)子程序B)主程序和子程序C)函数D)过程13、在一个C语言程序中请选择下列哪一项。 B A)main函数必须出现在所有函。
13、数之前B)main函数可以在任何地方出现C)main函数必须出现在所有函数之后D)main函数必须出现在固定位置14、要把高级语言编写的源程序转换为目标程序,需要使用下面哪一项。 d A)编辑程序B)驱动程序C)诊断程序D)编译程序15C语言中可处理的文件类型是: A)文本文件和数据文件。B)文本文件和二进制文件C)数据文件和二进制文件。D)数据代码文件。16、以下有4组用户标识符,其中合法的一组是: A)for B)4d C)f2_G3 D)if17、以下那一个不是C语言合法的关键字: A)switch B)charateristicC)int D)double18、以下那一项是属于C语言中。
14、的关键字: A)define B)switch C)IFELSED)type19、C语言中提供的合法关键字是哪一项。 A)swith。B)cherC)cese。D)default。20、不是C语言提供的合法的数据类型关键字是: A)double。B)short。C)INTEGER。D)char。1、下面哪一项不属于C语言的特点是________。A)C语言是一种面向对象程序设计语言。B)C语言程序执行效率高。C)C语言具有自我扩展能力。D)C语言具有可移植性。2、C语言程序在windows平台经过链接以后生成的可执行文件的扩展名是________。A).C B).exe C).o D).obj。
15、3、最早开发C语言是为了编写下面哪一种操作系统________。A)DOSB)Windows95C)UNIXD)Linux4、在VC+6.0下要编写C源程序文件要加上什么扩展名________。A)exe B)c C)obj D)lik5、下面所述正确的是________。A)编译器接收C语言源文件,生成可执行程序。B)目标文件可以直接执行。C)可以用记事本来编写C语言源程序。D)C#是C语言的超集,包含了C语言的所有内容。6、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是哪一项________。A)input x,y,z; B)scanf(%d%d%d,&x,。
16、&y,&z);C)scanf(%d%d%d,x,y,z); D)read(%d%d%d,&x,&y,&z);7、以下叙述正确的是________。A)在对一个C程序进行编译的过程中,可发现注释中的拼写错误。B)在C程序中,main函数必须位于程序的最前面。C)C语言本身没有输入输出语句。D)C程序的每行中只能写一条语句。8、指出下面正确的输入语句是________。A)scanf(a=b=%d,&a,&b) B)scanf(%d%f,&a,&b)C)scanf(%3c,c) D)scanf(%5.2f,&a)9、以下说法中正确的是哪一项________。A)C语言程序总是从第一个函数开始执行B。
17、)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行。D)C语言程序中的main()函数必须放在程序的开始部分。10、以下程序段的输出结果是________。int a=1234;printf(%2dn,a);A)12 B)34 C)1234 D)提示出错、无结果11、C语言具有低级语言的能力,主要指的是哪一项________。A)程序的可移植性。B)具有控制流语句。C)能直接访问物理地址,可进行位操作。D)具有现代化语言的各种数据结构。12、scanf函数被称为什么输入函数________。A)字符B)整数C)格式D)浮点13、在C语言中,合。
18、法的长整型常数是________。A)0LB) C)0.D)2.1869e1014、若int类型占两个字节,则以下语句输出为________。int k=1;printf(%d, %un,k,k);A)-1,-1 B)-1,65536C)-1,32768 D)-1,6553515若已定义x和y为double类型,则表达式:x=1,y=x+3/2的输出值是________。A)1 B)2 C)2.D)2.516、设有说明语句:char a=72;则变量a________。A)包含1个字符B)包含2个字符C)包含3个字符D)说明不合法17、下列标识符中不合法的是哪一项________。A)s_na。
19、me B)_eC)fox D)3DS18、下列不正确的转义字符是________。A) B) C)074 D)019、下面程序的输出结果是________。main() int a=1,b=2;printf(%dn,a=a+1,a+6,b+2);A)2 B)3 C)4 D)120、char类型在内存中的存储形式是________。A)原码B)ASCII码C)补码D)反码1、以下叙述正确的是:A)在对一个C程序进行编译的过程中,可发现注释中的拼写错误。B)在C程序中,main函数必须位于程序的最前面。C)C语言本身没有输入输出语句。D)C程序的每行中只能写一条语句。2、若以下选项中的变量已正确定。
20、义,则正确的赋值语句是:A) x1=26.8%3; B) 1+2=x2; C) x3=0x12; D) x4=1+2=3;3、以下 4 个选项中,不能被看作是一条语句的是:A) ; B) a=0,b=0,c=0; C) if (a0); D) if (b=0)m=1;n=2;4、下列 C 语言中运算对象必须是整型的运算符是:A) %= B) / C) = D) *=5、下列描述中不正确的是:A)字符型数组中可以存放字符串。B)可以对字符型数组进行整体输入、输出。C)可以对整型数组进行整体输入、输出。D)不能在赋值语句中通过赋值运算符=对字符型数组进行整体赋值。6、以下程序的输出结果是哪一项。#。
21、 includemain()printf(%dn,NULL);A)不确定的B)0C)-1D)17、在C语言中,合法的长整型常数是:A)OL B) C)&D)216D8、在C语言中,合法的字符常量是:A)084 B)x43 C)ab D)09、在宏定义 #define PI 3.14159中,用宏名PI代替一个:A)单精度数B)双精度数C)常量D)字符串。10、以下叙述正确的是:A)输入项可以是一个实型常量,如: scanf(%f.3.5); B)只有格式控制,没有输入项,也能正确输入数据到内存,例如: scanf(a=%d,b=%d); C)当输入一个实型数据时,格式控制部分可以规定小数点后的。
22、位数,例如:scanf(%4.2f,&f); D)当输入数据时,必须指明变量地址,例如: scanf(%f,&f);1、在C语言程序中,可以用做变量名的是:A)1e5 B)a1C)int D)*p 2、以下选项中,非法的字符常量是:A)t B)17 C)n D)xaa3、若有以下定义和语句,则输出结果是哪一项:int u=010,v=0x10,w=10;printf(%d,%d,%dn,u,v,w);A)8,16,10 B)10,10,10 C)8,8,10 D)8,10,104、在C语言中,要求运算数必须是整型的运算符是:A) B)% C)! D)5、scanf函数的格式控制串中,%3d表示。
23、为。A)输入宽度为3的整数B)3个数输入C)3位小数D)3*d6、设a为浮点型变量,下列选项中正确的是哪一项。A)scanf(%d,&a); B)scanf(%df,&a); C)scanf(%lf,&a); D)scanf(%f,&a);7、C语言中要求对变量作强制定义的主要理由是:A)便于移植。B)便于写文件。C)便于编辑预处理程序的处理。D)便于确定类型和分配空间。8、假设有int i; char c; float f;以下结果为整型的表达式是哪一项。A)i+f B)i*c C)c+f D)i+c+f9、若a为int类型,且其值为3,则执行完表达式a=a+a后,a的值是: A)-3 B)。
24、-12 C)36 D)610、若有定义:int a=8,b=5,c;,执行语句c=a/b+0.4;后,c的值为:A)1.4 B)1 C)2.0 D)211、设有 int a=1,b=2,c=3, d=4, m=2, n=2; 执行(m=ab)&(n=c+d)后d的值为:A)0 B)1 C)4 D)512、以下程序的输出结果是:main( ) int x=10,y=10,i;for(i=0;x8;y=+i)printf(%d,%d ,x-,y);A)10,1,9,2 B)9,8,7,6 C)10,9,9,0 D)10,10,9,113、假设所有变量均为整型,则表达式(a=2,b=5,b+,a+b。
25、)的值是哪一项:A)7 B)8 C)6 D)214、若有说明和语句:int a=5;则表达式:a+;的值是哪一项:A)7 B)6 C)5 D)415、以下叙述中不正确的是:A)一个好的程序应该有详尽的注释。B)在C程序中,赋值运算符的优先级最低。C)在C程序中,j+;是一条赋值语句。D)C程序中的#include和#define均不是C语句。16、下列说法中正确的是哪一项:A)在switch语句中-定要使用break语句。B)在switch语句中不-定要使用break语句C)break语句是switch语句的-部分。D)break只能用于switch语句中。17、下面的DO循环中,-共循环多少。
26、次。M=5;N=1;do N=N+1;while(N0 )B)if (!a) C)if (a=0 )D)if (a) 2、设有 int x=11; 则表达式 (x+ * 1/3) 的值是:A)3 B)4 C)11 D)123、设有如下定义: int x=10,y=3,z; 则语句printf(%dn,z=(x%y,x/y);的输出结果是:A)1 B)0 C)4 D)34、下列可作为C语言赋值语句的是:A)x=3,y=5 B)a=b=6C)i-; D)y=int(x);5、若w,x,y,z,m均为int型变量,则执行下面语句后的m值是:w=1;x =2;y=3;z=4;m=(wvoid main。
27、() int a=1, b=2;a=a+b; b=a-b; a=a-b;printf(%d,%dn, a, b ); A)1,2 B)3,1 C)3,2 D)2,112、在执行了a=5; a+=a; 之后,a的结果为哪一项。 A)5 B)10 C)15 D)2013、若执行以下程序时从键盘上输入9,则输出结果是哪一项:main( ) int n;scanf(%d,&n);if(n+bc)printf(%dn,d);else if(c-1=d)=1)printf(%dn,d+1);elseprintf(%dn,d+2);执行后输出结果是________。A、4B、编译时有错,无结果C、3D、21。
28、8、设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=ab)&(n=cd)后n的值为________。A、3B、4C、2D、119、设有程序段int k=10;while (k=0) k=k-1;则下面描述中正确的是________。A、循环体语句一次也不执行 B、循环体语句执行一次C、循环体是无限循环D、WHILE 循环执行10次20、C语言中while和do-while循环的主要区别是______。A、do-while允许从外部转道循环体内B、do-while的循环提不能是复合语句C、while的循环控制条件比do-while的循环控制条件严格D、do-while的循。
29、环体至少无条件执行一次1、当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是哪一项:A)c=b=a; B)(a=c)(b=c);C)(a=c)&(b=c); D)a=c=b;2、能正确表示a和b同时为正或同时为负的逻辑表达式是: A)(a=0b=0)&(a=0&b=0C)a+b0D)a*b03、执行:int i=5;i=i*4+2;的输出结果是哪一项: A)5 B)6 C)22D)264、设以下变量均为int类型,则值不等于7的表达式是:A)(x=y=6, x+y,x+1) B)(x=y=6,x+y,y+1)C)(x=6,x+1,y=6,x+y) D)(y=6,y+1,x=y,x+。
30、1)5、若有以下定义,int k=7, x=12;则值为3的表达式是:A)x%=(k%=5) B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)-(k%=5)6、设n=10,i=4,则执行赋值运算n%=i+1后,n的值是:。A)0 B)3 C)2 D)17、下面程序段的运行结果是:if (n=0);while(n+b)&(n=cd)运算后,n的值为:A)0 B)1 C)2 D)39、设x,y,z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为:A)4 B)16 C)32 D)5210、下列运算符中,结合方向为自左向右的是:A)?:B),C)+= 。
31、D)+11、在下列选项中,不正确的赋值语句是哪一项:A)+t; B)n1=(n2=(n3=0);C)k=i=j; D)a=b+c=1;12、以下程序运行该程序的输出结果是:main() int y=3,x=3,z=1;printf(%d %dn,(+x,y+),z+2);A)3、4 B)4、2 C)4、3 D)3、313、以下不正确的if语句形式是: A)if(xy & x!=y);B)if(x=y) x+=y ; C)if(x != y) scanf(%d,&x ) else scanf(%d,&y);D)if(xy) y+;y+;14、以下能正确定义一维数组的是:A) int a; B) 。
32、int a2+3; C) int a0,100; D) int N=100,aN;15、在C语言中,1维数组的定义方式为: A) int sz常量表达式; B) float sz整形表达式; C) double sz整型常量或整型表达式; D) char sz整型常量;16、以下程序的输出结果是哪一项:main() int n5=0,0,0,i,k=2;for(i=0;ik;i+) ni=ni+1;printf(%dn,nk);A)不确定的值 B)2 C)1 D)017、对以下说明语句 int a10=6,7,8,9,10; 的正确理解是:A)将5个初值依次赋给a1至a5。B)将5个初值依次赋。
33、给a0至a4。C)将5个初值依次赋给a6至a10。D)因为数组长度与初值的个数不相同,所以此语句不正确。18、数组初始化的初始值表中的数据项个数与数组元素的个数的关系错误的是:A)大于B)小于C)等于D)小于等于19、假定int类型变量占用两个字节,有定义:int x10=0,2,4;,则数组x在内存中所占字节数是:A)3 B)6 C)10 D)2020、C语言中数组下标的下限是哪一项。A)1。B)0 C)视具体情况。D)无固定下限。1、若k是int型变量,且有下面的程序片段:Dk=-3if(k=0) printf(#)else printf(&);输出结果是: A)# B)&C)#&D)有语。
34、法错误,无输出结果2、有int t;进人下面的循环之前,t的值为0,则以下叙述中正确的是:Awhile( t=1 ) A)循环控制表达式的值为0 B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对3、sizeof(float)是哪一项。CA) 一种函数调用。B) 一个不合法的表示形式。C) 一个整型表达式。D) 一个浮点表达式。4、若执行下面的程序时从键盘上输入3和4,则输出是:Bmain( ) int a,b,s;scanf(%d%d,&a,&b);s=a;if(ab) s=b;s=s*s;printf(%dn,s);A)14 B)16 C)18 D)205、关于函数的调用。
35、,以下错误的描述是:A)出现在一个表达式中B)作为一个函数的实参C)作为一个函数的形参D)出现在执行语句中6、以下所列的各函数首部中,正确的是:A)void play(var a:integer,var b:integer) B)void play(int a,b)C)void play(int a,int b)D)sub play(a as integer,b as integer)7、C语言库函数中的算术函数类型和变量的类型除绝对值函数外:A) 函数float 变量doubleB) 函数根据具体情况,变量是double。C) 函数double 变量double D) 函数和变量都根据具体情况决定。8、在函数调用过程中,如果函数A调用了函数B,函数B又调用了函数A,则这种调用被称为:A)函数的直接递归调用 B)函数的循环调用C)不允许这样的递归调用 D)函数的间接递归调用9、C语言中函数能否嵌套调用和递归。