C语言选择题

合集下载

c语言测试题目及答案

c语言测试题目及答案

c语言测试题目及答案一、选择题(每题2分,共20分)1. 下列哪个关键字不是C语言的控制语句?A. ifB. switchC. whileD. loop答案:D2. C语言中,一个整型变量int占用的字节数是多少?A. 1B. 2C. 4D. 8答案:C3. 在C语言中,以下哪个运算符用于计算两个数的乘方?A. *B. /C. ^D. %答案:C4. 下列哪个函数用于计算一个数的绝对值?A. abs()B. max()C. min()D. pow()答案:A5. 在C语言中,以下哪个是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. {"Hello World"}D. ["Hello World"]答案:A6. 在C语言中,以下哪个是正确的数组声明?A. int array[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};B. int array[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};C. int array = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};D. int array[10] = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9;答案:B7. 在C语言中,以下哪个是正确的函数声明?A. void myFunction(int x, int y);B. int myFunction();C. void myFunction(int x, int y) {}D. int myFunction(int x, int y);答案:A8. 在C语言中,以下哪个是正确的递归函数调用?A. func(5);B. func(func(5));C. func(func(5, 3));D. func(5, 3);答案:B9. 下列哪个是C语言中合法的变量名?A. 2variableB. variable-nameC. variable#nameD. variable_name答案:D10. 在C语言中,以下哪个是正确的结构体声明?A. struct Person { int age; char name[50]; };B. struct { int age; char name[50]; };C. Person { int age; char name[50]; };D. Person struct { int age; char name[50]; };答案:A二、填空题(每空2分,共20分)1. C语言中,用于定义一个函数的关键字是________。

C语言试题选择题及答案

C语言试题选择题及答案

★第1 题:阅读程序,选择程序的运行结果___A___。

#include <stdio.h>main(){ int x;x=try(5);printf(“%d\n”, x);}try(int n){ if(n>0) return(n*try(n-2));else return(1);}A. 15B. 120C. 1D. 前面3个答案均是错误的第2 题:在下列结论中,只有一个是正确的,它是___A___。

A. 递归函数中的形式参数是自动变量B. 递归函数中的形式参数是外部变量C. 递归函数中的形式参数是静态变量D. 递归函数中的形式参数可以根据需要自己定义存储类型★第3 题:阅读程序,选择程序的输出结果__A___。

#include <stdio.h>f(int x, int y){ return(y-x);}main(){ int (*g)(int,int);int a=5, b=6, c=2;g=f;c=(*g)(a,b);printf(“%d\n”, c);}A. 1B. 2C. 3D. 前面3个答案均是错误的第4 题:阅读程序,选择程序的输出结果__D___。

#include <stdio.h>char *p=”abcdefghijklmnopq”;main(){ while(*p++!=’e’) ;printf(“%c\n”, *p);}A. cB. dC. eD. f★第6 题:阅读程序,选择程序的输出结果___D___。

#include <stdio.h>void prtv(int *x){ printf(”%d\n”, ++*x);}main(){ int a=25;prtv(&a);}A. 23B. 24C. 25D. 26第7 题:阅读程序,选择程序的输出结果___B___。

#include <stdio.h>main(){ static char a[ ]= ”language”, b[]=”program”;char *ptr1=a, *ptr2=b;int k;for(k=0; k<7; k++)if(*(ptr1+k)==*(ptr2+k))printf(”%c”, *(ptr1+k));}A. gaeB. gaC. languageD. 有语法错误★第8 题:函数调用strcat(strcpy(str1, str2), str3)的功能是__C___。

C语言选择题

C语言选择题

C语⾔选择题C语⾔选择题精选1 . 以下正确的叙述是(D)。

A 输⼊项可以为⼀个实型常量,如scanf("%f", 3.5);B 只有格式控制,没有输⼊项,也能进⾏正确输⼊,如scanf("a=%d, b=%d");C 当输⼊⼀个实型数时,格式控制部分应规定⼩数点后位数,如scanf ("%4.2f", &f);D 当从键盘输⼊数据时, 必须指明变量的地址, 如scanf ("%f", &f);2. 已知:int *p,a; 则语句"p=&a;"中的运算符"&"的含义是( D )。

A 位与运算B 逻辑与运算C 取指针内容D 取变量地址3.对于C语⾔函数,下列描述中正确的是( C )。

A C函数既可以嵌套定义⼜可以嵌套调⽤B 函数必须有返回值,否则函数将⽆法使⽤C 在C程序中,调⽤函数时,只能将实参的值传递给形参,形参的数值不能传递给实参D ⼀个C程序中,存在调⽤关系的所有函数必须放在同⼀个源程序⽂件中4 下⾯正确的描述是(D )。

A 两个字符串所包含的字符个数相同时,才能⽐较字符串B 字符个数多的字符串⽐字符个数少的字符串⼤C 字符串"STOP _ "与"STOP" 相等( 注:_表⽰空格)D 字符串"That"⼩于字符串"The"5 设程序中定义了变量x和y,x赋值是-1,y赋值是-2,执⾏下列语句后,x的值不为0的程序段是( D )。

A if(!(x+1)) x+=1;else x-=1;B if(x==y) y=x+1;else{ y+=1; x-=y; }C if(x==0)printf("%d",x=y-2);elseprintf("%d",x=y+2);D if(x>y && x==y)6 已知教师记录描述为:struct teacher{ int id;char name[10];struct{ int y;int m;int d;} birth;} t;将变量t 中的d成员赋值为12的语句是(D)。

C语言练习题-选择题(带答案)

C语言练习题-选择题(带答案)

C语言练习题-选择题(带答案)1.下列字符序列中,可用作C标识符的一组字符序列是(D)。

A:S.b,um,average,_aboveB:cla,day,lotu_1,2dayC:#md,&12某,month,tudent_n!D:D56,r_1_2,name,_t_12.C语言程序从main()函数开始执行,所以这个函数要写在(C).A:程序文件的开始B:程序文件的最后C:程序文件的任何位置(除别的函数体内)D:它所调用的函数的前面3.完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为(B).A:连接、编译B:编译、连接C:连接、运行D:运行4.要调用文件处理函数时,在#include命令行中应包含(C).A:\5.以下数据中,不正确的数值或字符常量是(C)。

A:0B:5LC:o13D:98616.在C语言中,错误的语句是(C).A:a=b=c;B:;C:breakD:b=3某5,a某=4;7.以下标识符中,不能作为合法的C用户定义标识符的是(B)。

A:a3_b3B:voidC:_123D:IF8.一个C语言程序是由(C)组成.A:一个主程序和若干子程序B:函数C:若干过程D:若干子程序9.C语言源程序的基本单位是(B)。

A:过程B:函数C:子程序D:标识符10.已知宏定义#defineN3#defineY(n)((N+1)某n)执行语句z=2某(N+Y(5+1));变量z的值为(B).A:42B:48C:54D:出错第11题C语言文件系统中,整数1008若以ASCII形式存储,则占几个字节(B).A:2B:4C:1D:5第12题正确的自定义标识符是(C).A:ifB:a某bC:IfD:8pq第13题有说明语句chara='\\101';,则变量a(D).A:包含4个字符B:包含2个字符C:包含3个字符D:包含1个字符第14题下面正确的字符常量是(C).A:\第15题在main函数体内部和外部均允许出现的实体是(A).A:预处理命令B:语句C:另一函数的定义D:函数形式参数声明第16题若变量已正确说明为float类型,要通过语句canf(\给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是(B).A:102233B:10.0,22.0,33.0C:10.022.033.0第17题(B)是C语言提供的合法数据类型关键字.A:FloatB:ignedC:integerD:Char第18题下列选项中,合法的C语言关键字是(D).A:VARB:cherC:integerD:default第19题使用语句canf(\输入变量某,y的值([]代表空格),正确的输入是(C).A:1.25,2.4B:1.25[]2.4C:某=1.25,y=2.4D:某=1.25[]y=2.4第20题宏定义\\的宏替换\应为(A).A:a=某+5某y-3.1;B:a=(某+5)某(y-3.1);C:a=某+5某y-3.1D:a=(某+5)某(y-3.1)答案:A第21题(1.0分)题号:919下述程序段的输出结果是(A).int某=10;inty=某++;printf(\A:11,10B:11,11C:10,10D:10,11答案:A第22题(1.0分)题号:925以下不正确的C语言标识符是(A).A:2yB:a_1_2C:able某eD:_某答案:A第23题(1.0分)题号:914以下所列的C语言常量中,错误的是(B).A:0某ffB:1.2e0.5C:2LD:'\\72'答案:B第24题(1.0分)题号:918下列程序的输出是(B).#includemain(){printf(\A:0B:变量无定义C:-1D:1答案:B第25题(1.0分)题号:930在C程序中,1如果用来表示逻辑值时,应代表(A).A:真B:假C:整数1D:长整型数1答案:A第26题(1.0分)题号:927以下答案中不是C语言最基本数据类型的是(A).A:逻辑型B:整型C:字符型D:实型答案:A第27题(1.0分)题号:922常数的书写格式决定了常数的类型和值,0某1011是(C).A:8进制整型常量B:字符常量C:16进制整型常数D:2进制整型常数答案:C第28题(1.0分)题号:928若某,y均定义为int型,z为double型,以下不合法的canf函数调用语句是(D).A:canf(\\B:canf(\\C:canf(\\D:canf(\\答案:D第29题(1.0分)题号:931以下所列字符常量中,不合法的是(A).A:'\\0某a2'B:'\\65'C:'$'D:'\\某2a'答案:A第30题(1.0分)题号:912若变量都已正确说明,则以下程序段(C).a=2;b=3;printf(a>b\A:没有正确的输出格式控制B:输出为:某某某a=2C:输出为:###b=2D:输出为:某某某a=2###b=3答案:C第31题(1.0分)题号:929以下四个字符序列中,能用作用户自定义的标识符是(A).A:PutcharB:-doubleC:A123-D:int答案:A第32题(1.0分)题号:923下列格式符中,可以用于以8进制形式输出整数的是(C).A:%dB:C:%oD:答案:C第33题(1.0分)题号:936以下叙述中正确的是(D).A:输入项可以是一个实型常量,如:canf(\B:只有格式控制,没有输入项,也能正确输入数据到内存,例如:canf(\ C:当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:canf(\D:当输入数据时,必须指明变量地址,例如:canf(\答案:D第34题(1.0分)题号:926C语言中字符型(char)数据在内存中的存储形式是(D).A:原码B:补码C:反码D:ASCII码答案:D。

C语言基础选择题100道(附答案)01

C语言基础选择题100道(附答案)01

C语⾔基础选择题100道(附答案)011. 以下选项中可⽤作 C 语⾔合法⽤户标识符的是A) 2aB)voidC)-abcD) _123答案:D2. 以下选项中合法的 C 语⾔赋值语句是A)++i;B)a=b=34C)a=3,b=9D)k=int( a+b );答案:A3. 有以下程序段,其中的变量已定义为 int 类型sum = pad = 5; pAd = sum++, pAd++, ++pAd;printf( “%d\n”, pad );程序段的输出结果是A)4B)5C)6D)7答案:B4. sizeof( double ) 是A)⼀个整型表达式B)⼀个函数调⽤C)⼀个双精度表达式D)不合法的表达形式答案:A5. 有以下程序#include <stdio.h>main(){int a=2, c=5;printf(“a=%%d,b=%%d\n”, a, c );}程序运⾏后的输出结果是A)a=%d,b=%dB)a=%2,b=%5C)a=%%d,b=%%dD)a=2,b=5答案:A6. 有以下程序#include <stdio.h>#include <math.h>main(){int a=1, b=4, c=2;double x=10.5, y=4.0, z;z = ( a+b )/c + sqrt( y ) * 1.2 / c + x;printf("%f\n", z);}程序运⾏后的输出结果是程序运⾏后的输出结果是A)13.700000B)14.000000C)15.400000D)14.900000答案:A7. 若有定义语句:int a=12;,则执⾏语句:a+= a-= a*a;后,a的值是A)264B)552C)144D)-264答案:D8. C 语⾔程序的模块化是通过以下哪个选项实现的A)变量B)语句C)函数D)程序⾏答案:C9. A)1.0/a/b/cB)1/(a b c)C)1.0/a b cD)1/a/b/(double)c答案:A10. 有以下程序#include <stdio.h>main(){int x=010, y=10;printf("%d,%d\n", ++x, y–);}程序运⾏后的输出结果是A) 10,9B)11,10C)010,9D) 9,10答案:D11. 以下选项中叙述正确的是A)C 语⾔的标识符可分为关键字、预定义标识符和⽤户标识符三类B)C 语⾔的标识符可分为语句、变量和关键字三类C)C 语⾔的标识符可分为函数名、变量和预定义标识符三类D)C 语⾔的标识符可分为运算符、⽤户标识符和关键字三类答案:A12. 以下选项中叙述正确的是A)函数体必须由 { 开始B)C 程序必须由 main 语句开始C)C 程序中的注释可以嵌套D)C 程序中的注释必须在⼀⾏完成答案:A13. 以下选项中叙述正确的是A)结构化程序的三种基本结构是循环结构、选择结构、顺序结构B)C 语⾔源程序不编译也能直接运⾏C)使⽤ N-S 流程图不能描述复杂算法D)计算机能够直接运⾏ C 语⾔源程序,不必进⾏任何转换D)计算机能够直接运⾏ C 语⾔源程序,不必进⾏任何转换答案:A14. 以下选项中叙述正确的是A)使⽤三种基本结构就可以实现任何复杂算法B)只要程序包含了三种基本结构中的任意⼀种,就是结构化程序C)程序语法错误要在运⾏时才能发现D)可运⾏ C 语⾔程序不需要包含 main()函数答案:A15. 以下选项中,合法的 C 语⾔常量是A) "\2.0B)‘C++’C) 1.234D)2Kb答案:C16. 以下选项中,合法的 C 语⾔实数是A).2e0B)3.1e0.4C)E13D)7.12E答案:A17. 设 a,b,c 是整型变量且均已赋值,则以下选项中错误的是A)a = (b = 3) = 1;B)a = (b = 2) + c;C)a = b = c + 10;D)a = 1 + (b = c = 2);答案:A18. 有如下程序#include <stdio.h>main(){int x = 072;printf("%d\n", x+1);}程序运⾏后的输出结果是A)72B)73C)115D)59答案:D19. 以下选项中叙述正确的是A)C 程序中的语句要经过编译才能转换成⼆进制机器指令B)算法需要包含所有三种基本结构C)有些算法不能⽤三种基本结构来表达D)简单算法的操作步骤不能超过 20 步答案:A20. 以下选项中叙述正确的是A)复杂任务可以分解成简单⼦任务B)C 语⾔程序中的所有函数必须保存在同⼀个源⽂件中C)全部三种基本结构都包含的才是结构化程序D)C 语⾔程序可以定义多个不同内容的 main 函数答案:A21. 以下选项中,合法的数值型常量是A) 092B)“A”B)“A”C) 3.1415D)0xDH答案:C22. 以下选项中,合法的实数是A) E1.3B) 4.5E2C)7.11ED)1.2E1.2答案:B23. 若有定义 int a, b, c; 以下选项中的赋值语句正确的是A)a = (b = c) + 1;B)(a = b) = c = 1;C)a = (b == c) = 1;D)a + b = c;答案:A24. 有如下程序#include <stdio.h>main(){int x = 0x13;printf("%d\n", x+1);}程序运⾏后的输出结果是A)13B)14C)12D)20答案:D25. 以下叙述中错误的是A)书写风格良好的程序执⾏效率⾼B)书写风格良好的程序易读性好C)C 程序可以在⼀⾏上写多条语句D)C 程序允许将⼀条语句分写在多⾏上答案:A26. 以下选项中不能正确表⽰数值 10000 的实型常量是A)1.0E4.0B)1.E4C)10E3D)1.0e4答案:A27. 设有定义:int a=0,b=1,c=1;以下选项中,表达式值与其它三个不同的是A) a=b=cB) b=a= =cC)a=c= =bD)c=a!=c答案:B28. 设有两⾏定义语句:int scanf;float case;则以下叙述正确的是A)第 1 ⾏语句不合法B)两⾏定义语句都合法C)第 2 ⾏语句不合法D)两⾏定义语句都不合法答案:C29. 设有定义:double x=2.12;,以下不能完整输出变量 x 值的语句是A)printf(“x=%5.0f\n”,x);B)printf(“x=%f\n”,x);C)printf(“x=%lf\n”,x);D)printf(“x=%0.5f\n”,x);答案:A30. 设有定义:int a,b; float x; ,则以下选项中对语句所作的注释叙述错误的是A)scanf("%d%d%f",&a,&b); /* 多余的格式符%f 完全不起作⽤ /B)scanf("%d%d",&a,&b,&x); / 多余的输⼊项不能获得输⼊数据 /C)scanf("%d%f%d",&a,&b,&x); / 输⼊项与格式符类型不匹配,变量 b 和 x 得不到正确的输⼊数据 /D)scanf(“Input:%d%d”,&a,&b); / 格式串中允许加⼊格式符以外的字符串 */答案:A31. 结构化程序由顺序、选择、循环三种基本结构组成,以下相关叙述错误的是A)三种基本结构不可以嵌套使⽤B)顺序结构是按语句在程序中的先后顺序逐条执⾏,没有分⽀,没有转移C)选择结构是根据条件决定执⾏不同分⽀中的语句D)循环结构是根据条件决定是否重复、重复执⾏多少次循环体语句答案:A32. 以下能正确表述算式 sin(2πr+30°)的 C 语⾔表达式是A)sin(23.14r+3.1430/180.0)B)sin(2πr+ 30 )C)sin(23.14r+ 30 )D)sin(23.14r+303.14/360.0)答案:A33. 设有定义:int x=11,y=12,z=0;,以下表达式值不等于 12 的 是A) (z,x,y)B)(z=x,y)C)z=(x,y)D) z=(x==y)答案:D34. 以下可以将任意⼀个两位整数n的个位数与⼗位数对换的表达式为A)(n-n/10*10)10+n/10B)n-n/1010+n/10C)n/10+(n-n/10)D)(n-n/10)*10+(n/10)答案:A35. 设有以下程序段int y;y=rand() % 30+1;则变量 y 的取值范围是A) 1<y<30B)0≤y≤30C) 0<y≤30D)1<y≤30答案:C36. 以下程序段中,循环次数不超过 10 的是A)int i=10; do{ i=i+1;} while(i<0);B)int i=5; do{ i+=1;} while(i>0);C)int i=1; do{ i+=2;} while(i!=10);D)int i=6; do{ i-=2;} while(i!=1);答案:A37. 以下叙述正确的是A)计算机只接收由 0 和 1 代码组成的⼆进制指令或数据B)计算机只接收由 0 和 1 代码组成的⼗进制指令或数据C)计算机可直接接收并运⾏ C 源程序D)计算机可直接接收并运⾏任意⾼级语⾔编写的源程序答案:A38. 简单程序设计步骤中不包括A)编码B)确定算法C)安装编译程序D)调试答案:C39. 关于 C 语⾔标识符,以下叙述错误的是A)标识符可全部由数字组成B)标识符可全部由下划线组成C)标识符可全部由⼩写字母组成D)标识符可全部由⼤写字母组成答案:A40. 若有 C 语⾔表达式 2+34+7/3,则以下选项中关于执⾏顺序的叙述,正确的是A)先执⾏ 34 得 12,再执⾏ 2+12 得 14,再执⾏ 7/3 得 2,最后执⾏ 14+2 得 16B)先执⾏ 34 得 12,再执⾏ 7/3 得 2.5,最后执⾏ 2+12+2.5 得16.5C)先执⾏ 7/3 得 2,再执⾏ 34 得 12,再执⾏ 12+2 得 14,最后执⾏ 2+14 得 16D)先执⾏ 2+3 得 5,再执⾏ 5*4 得 20,再执⾏ 20+7 得 27,最后执⾏ 27/3 得 9答案:A41. 若想给已定义为 int 型的变量 a,b,c,d 赋值为 1,以下选项中错误的语句是A)a=b, b=c, c=d, d=1;B)a=b=c=d=1;C)a=1, b=a, c=b, d=c;D)d=1, c=d, b=c, a=b;答案:A42. 若有定义:char c; int d; 程序运⾏时输⼊:c=1,d=2<回车>,能把字符 1 输⼊给变量 c、整数 2 输⼊给变量 d 的输⼊语句是A)scanf(“c=%c,d=%d”, &c,&d);B)scanf(“c=%c d=%d”, &c,&d);C)scanf(“c=%d,d=%d”, &c,&d);D)scanf(“c=%d d=%d”, &c,&d);答案:A43. 以下叙述正确的是A) C 编译程序把⽂件后缀为.c 的源程序⽂件编译成⽂件后缀为.exe 的可执⾏⽂件B)C 编译程序把⽂件后缀为.c 的源程序⽂件编译成⽂件后缀为.obj 的⼆进制⽂件C)C 编译程序把⽂件后缀为.obj 的⼆进制⽂件编译成⽂件后缀为.exe 的可执⾏⽂件D)链接程序把⽂件后缀为.c 的源程序⽂件链接成⽂件后缀为.exe的可执⾏⽂件答案:B44. 算法应当具有的特性不包括A) 确定性B)有穷性C)美观性D)可⾏性答案:C45. 以下不属于 C 语⾔整数的是A)12fB)25uC)-32D)+20L答案:A46. 有 C 语⾔表达式 23+4+15%3 ,关于其执⾏顺序,以下叙述正确的是A)先执⾏ 23 得 6,再执⾏ 6+4 得 10,再执⾏ 15%3 得 0,最后执⾏ 10+0 得 10B)先执⾏ 23 得 6,再执⾏ 15%3 得 5,最后执⾏ 6+4+5 得 15C)先执⾏ 15%3 得 0,再执⾏ 23 得 6,最后执⾏ 6+4+0 得 10D)先执⾏ 15%3 得 3,再执⾏ 4+3 得 7,再执⾏ 2*3 得 6,最后执⾏ 6+7 得 13答案:A47. 若想给已定义为 int 型的变量 a、b、c、d 赋整数 1,以下选项中错误的语句是A)d=c, c=b, b=a, a=1;B)d=c=b=a=1;C)d=(b=c=(a=1));D)d=1, c=d, b=c, a=b;答案:A48. 若有定义:int a; float b; double c; ,程序运⾏时输⼊:1,2,3<回车>,能把 1 输⼊给变量 a、2 输⼊给变量 b、3 输⼊给变量 c 的输⼊语句是A) scanf("%d,%f,%f", &a,&b,&c);B)scanf("%d%f%lf", &a,&b,&c);C)scanf("%d,%lf,%lf", &a,&b,&c);D) scanf("%d,%f,%lf", &a,&b,&c);答案:D49. 以下叙述正确的是A)循环结构、选择结构、顺序结构都是结构化程序的基本结构B)计算机可以直接执⾏ C 语⾔程序,不需要做任何转换C)过于复杂的算法不能使⽤ N-S 流程图描述D)只有不超过 20 步操作步骤的算法才是简单算法答案:A答案:A50. 以下叙述正确的是A) C 语⾔程序并不是必须要定义 main()函数B)只使⽤三种基本结构即可解决任何复杂问题C)只要程序包含了任意⼀种基本结构,就肯定是结构化程序D)程序中的语法错误只有在运⾏时才能显现答案:B51. 以下选项中,合法的 C 语⾔常量是A) 2MBB)‘CPP’C)"\1.0D) 21.84答案:D52. 以下选项中,合法的 C 语⾔实数是A).1e0B)E1C)0.10ED)2.1e0.2答案:A53. 设 a,b,c 是整型变量,且已正确赋初值,以下选项中错误的赋值语句是A)a = 2 = (b = 9) = 1;B)a = (b = 3) * c;C)a = b = c / 10;D)a = 1 % (b = c = 2);答案:A54. 有如下程序#include <stdio.h>main( ) {int x = 072;printf(“X=%d\n”, x+1);}程序运⾏后的输出结果是A) X=73B) X=59C)X=115D)X=72答案:B55. 下⾯叙述正确的是A)C 语⾔程序的语句经过编译和链接转换成⼆进制机器指令后才能执⾏B)任何算法需要包含三种基本结构中的两种以上C)复杂算法是不能⽤三种基本结构来表达的D)只要是简单算法,它的操作步骤都不会超过 20 步答案:A56. 下⾯叙述正确的是A)任何复杂任务都可以分解成简单⼦任务B)C 语⾔程序的所有函数只能处于同⼀个源⽂件中C)包含全部三种基本结构的程序才是结构化程序D)C 语⾔程序可以定义多个不同内容的 main 函数答案:A57. 以下选项中,合法的数值型常量是A) ‘X’B) 3.2B) 3.2C)099D)0xEH答案:B58. 以下选项中,合法的实数是A) 1.9E1.4B)E1.1C)2.10ED) 1.5E2答案:D59. 若已有定义语句:int a, b, c;,且变量已正确赋初值,则以下选项中正确的赋值语句是A)a = (b = c) + 8;B)(a = b) = c = 9;C)a = (b == c) = ‘A’;D)a + b = c + 1;答案:A60. 有以下程序#include <stdio.h>main( ) {int x = 0x13;printf(“INT:%d\n”, x+1);}程序运⾏后的输出结果是A) INT:12B)INT:13C) INT:20D)INT:14答案:C61. 关于程序设计基本概念,以下叙述错误的是A)计算机可以直接执⾏由任意⾼级语⾔编写的程序B)⾼级语⾔都有与之对应的编译程序或解释程序C)⽤任何⼀种计算机⾼级语⾔都可以把算法转换为程序D)结构化算法可以解决任何复杂的问题答案:A62. 关于程序中的注释,以下叙述正确的是A) 注释中间可以嵌套另⼀个注释B)注释必须置于所说明的语句前或语句后C)注释的内容必须放在/* 和 */之间D)注释内容错误会导致编译出错答案:C63. 以下不能⽤于实型数据的运算符是A) +B)/C)*D) %答案:D64. 以下选项中,与 n=i++ 完全等价的表达式是A)n=i,i=i+1B)n+=i+1C)i=i+1,n=iD)n=++i答案:A65. 以下表达式的值与 x ⽆关、其值恒为真的是A)0 < x < 5B)x>10 && x<5C)x>10 || x<5D)x<10 && x>5答案:A66. 设变量 m 为 float 类型,变量 n 为 int 类型,则以下能实现将m 中的数值保留⼩数点后两位,第三位进⾏四舍五⼊运算的表达式是A)n=m100+0.5, m=n/100.0B)m=(m100+0.5)/100.0C)n=m/100+0.5, m=n100.0D)m=m100+0.5/100.0答案:A67. 以下叙述正确的是A) 函数体内的定义语句和可执⾏语句允许任意交替出现B)main()函数若不带参数,其后⾯的⼀对圆括号可省略C) C 程序总是以 main()作为程序执⾏的起始⾏D)C 语⾔中的语句之间必须⽤分号作为分隔符答案:C68. C 语⾔中的基本数据类型包括A)整型、实型、字符型B)整型、字符型、数组C)整型、实型、逻辑型D)整型、实型、结构体答案:A69. 以下不正确的定义语句是A) long b=0L;B) unsigned int a= -100u;C)short c2=0123;D)int d=0x0;答案:B70. 以下⾮法的字符常量是A)’\n’B)’\101’C)’\x21’D)’\0’答案:A71. 设有定义:int x=7,y=12;,则以下表达式值为 3 的是A)(y%=x)-(x%=5)B)y%=(x%=5)C)y%=x-x%5D)y%=(x-x%5)答案:A72. 设有定义:int n = 1234;double x = 3.1415;则语句: printf("%3d,%1.3f\n", n, x); 的输出结果是A) 1234,3.141B)123,3.142C) 1234,3.142D)123,3.141答案:C73. 以下叙述错误的是A)任何能通过编译和运⾏的算法都⼀定能得到所期望的结果B)⼀个算法所包含的操作步骤应该是有限的C)算法中每⼀条指令必须有确切的含义D)算法可以⽤各种描述⽅法来进⾏描述答案:A74. 关于程序模块化,以下叙述错误的是A) 程序模块化可以提⾼调试程序的效率B)程序模块化可以提⾼程序编制的效率C)程序模块化可以提⾼程序代码复⽤率D)程序模块化可以提⾼程序运⾏的效率答案:D75. 以下是正确 C 语⾔标识符的是A)_3B)#3C)&3D)-3答案:A76. 以下是正确 C 语⾔实型常量的是A)1e-1B)e-1C)-1eD).e-1答案:A77. 若想定义 int 型变量 a,b,c,d 并都赋值为 1,以下写法中错误的是A)int a=b=c=d=1;B)int a=1, b=1, c=1, d=1;C)int a,b,c,d; a=b=c=d=1;D)int a,b,c,d=1; a=b=c=d;答案:A78. 若有定义:char c; double d; 程序运⾏时输⼊:1 2<回车>,能把字符 1 输⼊给变量 c、数值 2 输⼊给变量 d 的输⼊语句是A)scanf("%c%lf", &c,&d);B)scanf("%d%lf", &c,&d);C)scanf("%c%f", &c,&d);D)scanf("%d%f", &c,&d);答案:A79. 以下叙述正确的是A)所有程序⾏都必须⽤分号结束B)C 语⾔程序由 C 语句组成,可以省略 main 函数C)分号是 C 语句之间的分隔符D) 在 C 语⾔中分号是语句的组成部分答案:D80. 以下叙述正确的是A) C 程序由函数组成,可以不包含 main 函数B)每个 C 程序⽂件中的 main 函数都应当放在最前⾯C)每个 C 程序⽂件都应当包含⼀个 main 函数D) 每个 C 程序都只能有⼀个 main 函数答案:D81. 若有定义:int a,b,c; 以下程序段的输出结果是a=11; b=3; c=0;printf("%d\n",c=(a/b,a%b));A)2B)0C)3D)1答案:A82. 有以下程序#include <stdio.h>main(){ int a=2,b=3,c=4;a*=16 +(b++) - (++c);printf("%d \n",a );}程序运⾏后的输出结果是A)30B)28C)15D)14答案:B83. 若有定义:double a, b, c; 能正确给 a,b,c 输⼊数据的语句是A)scanf(" %lf %lf %lf",&a, &b, &c );B)scanf(" %f %f %f",&a, &b, &c );C)scanf(" %lf %lf %lf",a, b, c );D)scanf(" %lf %lf %lf"; *a, *b, *c );答案:A84. 输出语句:printf("%d\n",11+011);的输出结果是A)22B)20C)022D)021答案:B85. 以下叙述正确的是A)结构化程序的三种基本结构是循环结构、选择结构、顺序结构B)C 语⾔程序不编译也能直接运⾏C)有些算法不能⽤三种基本结构来表达D)如果 C 语⾔程序实现的算法很简单,则计算机不进⾏任何代码转换就能执⾏程序答案:A86. 以下叙述正确的是A)通过分解成简单⼦任务,可以完成任何复杂任务B)每个结构化程序都要包含全部三种基本结构C)C 语⾔程序的所有⾃定义函数只能写在同⼀个源⽂件中D)C 语⾔程序允许使⽤多个 main 函数,只要它们的函数体各不相同即可答案:A87. 以下选项中合法的 C 语⾔常量是A) 2EKB)‘C-STR’C)"\1.0D) 2014.1答案:D88. 以下选项中,合法的 C 语⾔实数是A).4e0B)4.3e0.2C)E4.8D)0.29E答案:A89. 设 a,b,c 已定义为整型变量,以下选项中不正确的赋值语句是A)a = 3 = (b = 2) = 1;B)a = (b = 0) * c + 1;C)a = b = c / 1.0;D)a = 10 % (b = c = 2.0);答案:A90. 有以下程序#include <stdio.h>main( ) { int x = 0x9;printf("%c\n", ‘A’+x);}程序运⾏后的输出结果是A)IB)JC)KD)H答案:B91. 以下叙述中错误的是A)计算机可以直接识别由⼗六进制代码构成的程序B)可以连续执⾏的指令的集合称为“程序”C)“程序”是⼈与计算机“对话”的语⾔D)计算机可以直接识别由 0 和 1 组成的机器语⾔代码答案:A92. 在传统流程图中,⽤来表⽰输⼊输出的图形是A) 椭圆形B)长⽅形C)菱形D)平⾏四边形答案:D93. 以下说法正确的是A)赋值语句是⼀种可执⾏语句,应当出现在函数的可执⾏部分B)赋值语句可以出现在函数中的任意位置C)赋值语句可以出现在函数外单独执⾏D)赋值语句可以出现在源程序中的任意位置答案:A94. 若有定义: double x;,则表达式:x=0,x+10,x++ 的值是A)1.0B)10.0C)11.0D)0.0答案:D95. 若变量已正确定义并赋初值,以下合法的赋值语句是A)k=(m==n);B)k=int(m+n);C)k=-m-nD)k=m*n=1;答案:A96. 设有定义: double x=5.16894;,则语句 printf("%lf\n ",(int)(x*1000+0.5)/1000.);的输出结果是句 printf("%lf\n ",(int)(x*1000+0.5)/1000.);的输出结果是A)5.16900B)5.16800C)0.00000D)输出格式说明符与输出项不匹配,产⽣错误信息答案:A97. 以下选项中不是 C 语⾔数据类型的是A) charB)floatC) stringD)int答案:C98. 以下选项中不能在 C 语⾔程序中⽤作⽤户标识符的是A) _3_14B)scanfC)FloatD) auto答案:D99. 以下选项中可⽤作 C 程序合法整数的是A)0x77B)1 2 (数字间有⼀个空格)C)xffD)018答案:A100. 以下选项中关于 C 语⾔算术表达式的叙述中错误的是A)C 语⾔仅提供了+、-、*、/ 这 4 个基本算术运算符B)C 语⾔采⽤的是⼈们熟悉的四则运算规则,即先乘除后加减C)算术表达式中,运算符两侧类型不同时,将进⾏类型之间的转换D)可以通过使⽤⼩括号来改变算术表达式中某些算术运算符的计算优先级答案:A。

(完整版)C语言题库(带详解答案)

(完整版)C语言题库(带详解答案)

(完整版)C语⾔题库(带详解答案)⼀单项选择题1.(A)是构成C语⾔程序的基本单位。

A、函数B、过程C、⼦程序D、⼦例程2.C语⾔程序从 C开始执⾏。

A) 程序中第⼀条可执⾏语句 B) 程序中第⼀个函数C) 程序中的main函数 D) 包含⽂件中的第⼀个函数3、以下说法中正确的是(C)。

A、C语⾔程序总是从第⼀个定义的函数开始执⾏B、在C语⾔程序中,要调⽤的函数必须在main( )函数中定义C、C语⾔程序总是从main( )函数开始执⾏D、C语⾔程序中的main( )函数必须放在程序的开始部分4.下列关于C语⾔的说法错误的是(B)。

A) C程序的⼯作过程是编辑、编译、连接、运⾏B) C语⾔不区分⼤⼩写。

C) C程序的三种基本结构是顺序、选择、循环D) C程序从main函数开始执⾏5.下列正确的标识符是(C)。

A.-a1B.a[i]C.a2_iD.int t5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的“-” ,选项B中“[”与“]”不满⾜(1);选项D中的int为关键字,不满⾜(3)6.下列C语⾔⽤户标识符中合法的是( B)。

A)3ax B)x C)case D)-e2 E)union选项A中的标识符以数字开头不满⾜(2);选项C,E均为为关键字,不满⾜(3);选项D中的“-”不满⾜(1);7.下列四组选项中,正确的C语⾔标识符是(C)。

A) %x B) a+b C) a123 D) 123选项A中的“%” ,选项B中“+”不满⾜(1);选项D中的标识符以数字开头不满⾜(2)8、下列四组字符串中都可以⽤作C语⾔程序中的标识符的是(A)。

A、print _3d db8 aBcB、I\am one_half start$it 3paiC、str_1 Cpp pow whileD、Pxq My->book line# His.age选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满⾜(1);选项C中的while 为关键字,不满⾜(3)9.C语⾔中的简单数据类型包括(D)。

(完整版)C语言选择题(附答案)

(完整版)C语言选择题(附答案)

第一单元C语言概述一、选择题1、C语言中主函数的个数为(A)个。

A)1 B)2C)无穷个D)任意个2、以下关于C语言描述错误的是(D)。

A)一个C程序总是从main函数开始执行TB)每个语句和数据声明的最后必须有一个分号TC)C语言的注释符是以“/*”开始并以“*/”结束的TD)一个C程序可以包含多个main函数F3、C 语言源程序文件后缀为(C )。

A).EXE B).OBJ C).C D).ASM4、C语言是由(C )组成的。

A)子程序B)主程序与子程序C)函数D)过程5、C语言属于(B )语言A)机器语言B)汇编语言C)高级语言D)面向对象语言第二单元C语言基础一、选择题1、C语言中普通整型变量int在内存中占(B )字节。

A)1 B)2 C)3 D)42、下列不是C语言基本数据类型的是(A )。

A)字符型B) 整型C) 浮点型D) 结构体3、有关自增、自减运算,以下只有(D )是正确的。

A) ---f B) ++78 C) a—b++ D) d++4、已知A=7.5,B=2,C=3.6,表达式(A>B && C>A) || (A<B && !C>B)的值是(A )。

A)0 B)10 C)1 D)55、若有x=1,y=2,z=3,则表达式(x<y?x:y)= =z的值是(D )。

A)1 B)2 C)3 D)06、判断char型变量ch是否为大写字母的正确表达式是(C )。

A) ‘A’<=ch<=‘Z’B) (ch>=‘A’)&(ch<=‘Z’)C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch)7、判断整型变量digit是否为数字的正确表达式是(C )。

A) ‘0’<=ch<=‘9’B) (ch>=‘0’)&(ch<=‘9’)C) (ch>=‘0’)&&(ch<=‘9’) D) (‘0’<= ch)AND(‘9’>= ch)8、一个C程序的执行是从(A )。

C语言选择题(含答案)

C语言选择题(含答案)

C语言选择题(含答案)选择题1.以下叙述正确的是_____。

A) 在C程序中,main函数必须位于程序的最前面。

B) C语言本身没有输入输出语句。

C) C程序的每行只能写一条语句。

D) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误。

2.下面四个选项中,均是不合法的用户标识符的选项是。

A) A B) float C) b-a D) _123P_0 1a0 goto tempdo _A int INT3、下列四个选项中都是合法的转义字符的A) ‘\’’‘\\’‘\n’B) ‘\’‘\017’‘\”’C) ‘\018’‘\f’‘xab’D) ‘\\0’‘\101’‘x1f’4、设所有变量均为整型,则表达式z=(a=2,b=5,b++,a+b)的值是:A)7 B)8 C)6 D)25、若有代数式,则不正确的C语言表达式是:A) a/b/c*e*3 B) 3*a*e/b/cC) 3*a*e/b*c D) a*e/c/b*36、若希望当A的值为奇数时,表达式的值为”真”, A的值为偶数时,表达式的值为”假”。

则以下不能满足要求的表达式是_________。

A) A%2==1 B) !(A%2==0)C) !(A%2) D) A%27、以下程序的运行结果是 :main(){int m=6;if(m++> 6) printf(" %d\n",m);e1se printf("%d\n",--m );}A)4 B)5 C) 7 D) 68、当a=1,b=3,c=5,d=4,执行完下面一段程序后x 的值是 :if(a<b)if(c<d) x=1;elseif(a<c)if(b<d) x=2;else x= 3;else x=6;else x=7;A)1 B)2 C)3 D)69、阅读以下程序,当输入数据的形式为25,13,10<CR>正确的输出结果为 main(){int x,y,zscanf("%d%d%d",&x,&y,&z );printf(“x+y+z=%d\n” ,x+y+z);。

C语言试题库(含答案)

C语言试题库(含答案)
C、Print f("%c\n",class[2].name[l]);
D、print f("%c\n",class[2].name[0]);
标准答案:D
【5】设单精度变量f,g的值均为5.0,则下面的表达式中,使f为10.0的表达式是。
A、f+=g
B、f-=g+5
C、f*=g-5
D、f/=g*5
标准答案:A
if(ch=='/')w=a/b;
B、B)if(ch=='*')w=a*b;
else if(ch=='/')w=a/b;
if(ch=='+')w=a+b;
else if(ch=='-')w=a-b;
C、if(ch=='+')w=a+b;
else if(ch=='-')w=a-b;
if(ch=='*')w=a*b;
A、15
B、10
C、25
D、20
标准答案:A
【15】程序段的基本结构中,不包含()。
A、函数结构
B、循环结构
C、顺序结构
D、分支结构
标准答案:A
【1】执行语句scanf("%d,%d",&m,&n);使m和n的值分别为1和2,正确输入是。
A、1
B、2
C、1,2
D、12
标准答案:c
【3】若用数组名作为函数调用的实参,传递给形参的是()。
#include<stdio.h>
main()
{int i=1;

C语言的选择题和详细的解释共40题

C语言的选择题和详细的解释共40题

C语言的选择题和详细的解释共40题1. C语言中,以下哪个关键字用于定义一个变量?a) defineb) varc) intd) function解释:正确答案是c) int。

关键字'int'用于定义整数型变量。

2. 下列哪个运算符用于逻辑与操作?a) &&b) ||c) !d) &解释:正确答案是a) &&。

双与运算符"&&"用于执行逻辑与操作。

3. 在C语言中,如何声明一个字符数组?a) char array[];b) array char[];c) character array[];d) char[] array;解释:正确答案是a) char array[]。

这是声明字符数组的方式。

4. 下列哪个语句用于在C语言中执行条件分支?a) forb) switchc) whiled) do-while解释:正确答案是b) switch。

switch语句用于执行条件分支。

5. C语言中,以下哪个数据类型用于存储小数?a) floatb) intc) chard) double解释:正确答案是d) double。

'double'数据类型用于存储双精度浮点数。

6. 下列哪个操作符用于获取一个变量的地址?a) &b) *c) #d) %解释:正确答案是a) &。

'&'操作符用于获取变量的地址。

7. C语言中,以下哪个关键字用于定义一个函数?a) functionb) definec) voidd) main解释:正确答案是c) void。

'void'关键字用于定义函数返回类型。

8. 在C语言中,如何用单行注释表示注释内容?a) // 注释内容b) /* 注释内容*/c) # 注释内容d) --注释内容解释:正确答案是a) // 注释内容。

C语言选择题

C语言选择题
else y =0;
C: y=-1;
if (x)
if(x>0) y=1;
else if (x==0) y = 0;
else y=-1;
D: y=0;
if (x>=0)
if(x>0) y=1;
else y=-1;
答案:A
28. (2分)
若有定义: float w; int a, b;则合法的switch语句是________。
A: switch (b){case 1: printf("*\\n") case 2: printf("**\\n") default:
B: switch (w) {case 1.0: printf("*\\n");case 2.0: printf("**\\n");}
C: switch (a){case 1 printf("*\\n");case 2 printf("**\\n");}
A:只能用关系表达式
B:可用任何表达式
C:只能用逻辑表达式
D:只能用关系或逻辑表达式
答案:B
25. (2分)
设a、b、c、d、m、n均为整型变量,且a=5,b=7,c=3,d=8,m=2,n=2,则表达式值(m=a>b)&&(n=c>d)运算后,n的值为_____。
A: 3
B: 1
C: 2
D: 0
答案:D
C: 0.200000
D: 1.000000
答案:C
33. (2分)
当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为________。

c语言试题及答案大全

c语言试题及答案大全

c语言试题及答案大全一、选择题1. 下列关于C语言的说法中,正确的是:A. C语言是一种高级编程语言。

B. C语言可以被编译成机器语言执行。

C. C语言的语法和C++完全相同。

D. C语言不支持面向对象的编程。

答案:B. C语言可以被编译成机器语言执行。

2. C语言中,以下哪个是合法的标识符?A. 123abcB. abc_123C. intD. function()答案:B. abc_1233. 在C语言中,以下哪种循环结构是先判断条件后执行循环体?A. for循环B. while循环C. do-while循环D. switch语句答案:C. do-while循环二、编程题1. 编写一个C程序,计算并输出1到n之间所有整数的和。

其中,n由用户输入。

答案:#include <stdio.h>int main() {int n;int sum = 0;printf("请输入一个整数n:");scanf("%d", &n);for (int i = 1; i <= n; i++) {sum += i;}printf("1到%d之间所有整数的和为%d\n", n, sum);return 0;}2. 编写一个C程序,判断一个整数是否为素数。

素数是指除了1和自身外,无法被其他整数整除的整数。

答案:#include <stdio.h>#include <stdbool.h>bool is_prime(int num) {if (num <= 1) {return false;}for (int i = 2; i * i <= num; i++) {if (num % i == 0) {return false;}}return true;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (is_prime(num)) {printf("%d是素数\n", num);} else {printf("%d不是素数\n", num);}return 0;}三、应用题1. 假设有一个班级的学生信息如下:学号姓名年龄性别101 张三 18 男102 李四 17 女103 王五 16 男请根据上述学生信息,编写一个C程序,输出学生的平均年龄。

(完整版)C语言单项选择题(带答案)

(完整版)C语言单项选择题(带答案)

计算机程序设计基础(C语言)单项选择练习题一、基本概念1. C语言程序是由构成的。

A)一些可执行语言 B)main函数C)函数 D)包含文件中的第一个函数2. 是构成C语言程序的基本单位。

A)函数 B)过程 C)子程序 D)子例程3.C语言可执行程序从开始执行。

A) 程序中第一条可执行语句 B) 程序中第一个函数C) 程序中的main函数 D) 包含文件中的第一个函数4.C语言程序从main()函数开始执行,所以这个函数要写在____。

A) 程序文件的开始 B) 程序文件的最后C) 它所调用的函数的前面 D) 程序文件的任何位置5. 以下说法中正确的是。

A)C语言程序总是从第一个定义的函数开始执行B)在C语言程序中,要调用的函数必须在main( )函数中定义C)C语言程序总是从main( )函数开始执行D)C语言程序中的main( )函数必须放在程序的开始部分6. 下列方法中错误的是。

A)主函数可以分为两个部分:主函数说明部分和主函数体。

B)主函数可以调用任何非主函数的其它函数。

C)任何非主函数可以调用其它任何非主函数。

D)程序可以从任何非主函数开始执行。

7.下列关于C语言的说法错误的是。

A) C程序的工作过程是编辑、编译、连接、运行B) 标识符的命名由英文字母、数字和下划线组成,与字母的大小写无关C) C程序的三种基本结构是顺序、选择、循环D) 一个C程序总是从main函数开始执行的8. 系统默认的C语言源程序扩展名为.C,需经过之后,生成.exe文件,才能运行。A) 编辑、编译 B )编辑、连接 C) 编译、连接 D) 编辑、改错9.下列说法中正确的是。

A)由于C源程序是高级语言程序,因此一定要在TC软件中输入。

B)由于C源程序是由字符流组成的,因此可以作为文本文件在任何文本编辑的软件中输入。

C)由于C程序是高级语言程序,因此输入后即可执行。

D)由于C程序是高级语言程序,因此它是由命令组成的。

c语言选择题练习37道(含答案)

c语言选择题练习37道(含答案)

c语言选择题练习37道(含答案)37道选择题:1. 下列不是C语言关键字的是:A. switchB. caseC. intD. double答案:D 解析:double是C语言中的数据类型,不是关键字。

2. 在C语言中,下列标识符合法的是:A. _123abcB. 123abcC. abc123_D. abc_123_答案:D 解析:在C语言中,标识符可以以字母或下划线开头,只能包含字母、数字和下划线。

3. 表达式x += y 是以下哪个表达式的简写?A. x = x –yB. x = x + yC. x = x * yD. x = x / y答案:B 解析:x += y 是x = x + y 的简写。

4. 下列循环语句中,能保证至少执行一次循环体的是:A. for(i=0;i<10;i++)B. do{i++;}while(i<10)C. while(i<10){i++;}D. 以上都不是答案:B 解析:do-while语句可以保证至少执行一次循环体。

5. 下面C 语言中的数组定义,正确的是:A. int[] a = {1, 2, 3};B. int a[3] = {1, 2, 3};C. int[3] a = {1, 2, 3};D. 以上都不正确。

答案:B 解析:C语言中数组的定义格式为数据类型数组名[元素个数] = {元素1,元素2,...,元素n}。

6. 下列程序的输出结果是什么?#include <stdio.h>int main(){int i=0;while(i>0){printf("%d",i);i++;}return 0;}A. 0B. 1C. 无输出D. 其他答案:C 解析:while循环条件不满足,循环体不会执行,故无输出。

7. 下列代码片段的输出是什么?int a = 10;double b = 10.5;printf("%d %f",a,b);A. 10 10.5B. 10.5 10C. 10.0 10.5D. 编译错误答案:A 解析:%d表示输出整数,%f表示输出浮点数。

C语言选择题题库(116道)

C语言选择题题库(116道)

C语言选择题1、用C语言编写的源文件经过编译,若没有产生编译错误,则系统将()。

——[单选题]A 生成可执行目标文件B 生成目标文件C 输出运行结果D 自动保存源文件正确答案:B2、一个C语言程序是由()——[单选题]A 一个主程序和若干子程序组成B 函数组成C 若干过程组成D 若干子程序组成正确答案:B3、C 程序的执行过程在下列说法中,▁▁▁▁▁ 是正确的。

——[单选题]A C 程序从第一个函数开始执行,直到最后一个函数结束B C 程序从第一个函数开始执行,直到主函数结束C C 程序从主函数开始执行,直到最后一个函数结束D C 程序从主函数开始执行,直到主函数结束正确答案:D4、结构化程序由三种基本结构组成,三种基本结构组成的算法——[单选题]A 可以完成任何复杂的任务B 只能完成部分复杂的任务C 只能完成符合结构化的任务D 只能完成一些简单的任务正确答案:A5、以下叙述中错误的是()——[单选题]A c语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令B c程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件C 用c语言编写的程序称为源程序,它以ASCIl代码形式存放在一个文本文件中D c语言源程序经编译后生成后缀为.obj的目标程序正确答案:A6、以下叙述中,正确的是。

——[单选题]A C语言程序总是从第一个函数开始执行B 在C语言程序中,要调用的函数必须在main()函数中定义C C语言程序总是从main()函数开始执行D C 语言程序中的main()函数必须放在程序的开始部分正确答案:C7、C 风格的注释 C 风格的注释,也称块注释或多行注释,以▁▁▁ 开始,以▁▁▁ 结束。

——[单选题]A /* 和 */B { 和 }C [ 和 ]D ( 和 )正确答案:A8、空语句仅有一个▁▁▁▁▁ 的语句称为空语句。

——[单选题]A 逗号( , )B 句号( . )C 分号( ; )D 冒号( : )正确答案:C9、c语言规定,在一个源程序中,main函数的位置()。

(完整版)C语言选择题题库

(完整版)C语言选择题题库

本卷共有4道大一、单项选择题(25道小题,共50分)1、以下说法中正确的是(C)(2分)A、C语言程序总是从第一个的函数开始执行B、在C语言程序中,要调用的函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分2、一个算法应该具有“确定性”等五个特性,下面对另外4个特性的描述中错误的是(B)(2分)A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性3、以下选项中,不合法常量的是(B)(2分)A、1.234e04B、1.234e0.4C、1.234e+4D、1.234e04、C语言中最简单的数据类型包括(B)(2分)A、整型、实型、逻辑型B、整型、实型、字符型C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型5、能正确表示逻辑关系:“10≥=a≥=0”的C语言表达式是 (D)(2分)A、 10>=a>=0B、 a>=0 and a<=10C、 a>=0||a<=10D、 a>=0&&a<=106、设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(D)(2分)A、 6.500000B、 6C、 5.500000D、 6.0000007、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是(B)(2分)A、 INPUT x、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);8、设x和y均为int型变量,则以下语句:x+=y;y=x-y;x-=y;的功能是(D)(2分)A、把x和y按从大到小排列B、把x和y按从小到大排列C、无确定结果D、交换x和y中的值9、若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是(A)(2分)A、 0B、 0.5C、 1D、 210、设char ch='A';则ch=(ch>='A'&&ch<='Z')?(ch+32):ch的值是( B )。

c语言选择题库

c语言选择题库

复习题一、单项选择题(每题1分,共30分)1、一个C语言程序是由()。

A.一个主程序和若干子程序组成B.函数组成C.若干过程组成D.若干子程序组成3、用来标识变量名、符号常量名、函数名、类型名、文件名、数组名的有效字符序列称为标识符。

在C语言中,规定标识符只能有字母、数值或下划线三类字符组成,且第一个字符必须为()或()。

A.字母,数字B.数字,下划线C.字母,下划线D.字母,下划线,数字5、C语言中,主调函数携带的参数列表称为实参,而被调用函数的参数列表习惯上称为()。

A.形式参数B.值参C.动态参数D.静态参数7、下列关于switch和break语句的结论中,只有()是正确的。

A.break语句是switch语句的一部分B.在switch语句中可以根据需要使用或不使用break语句C.在switch语句中必须使用break语句D.以上三个结论中有两个是正确的9、对于数组a[m][n]来说,使用数组的某个元素时,行下标最大值是(),列下标最大值是()。

A. m,n-1B. m-1,n-1C. m-1,nD. m,n10、下面程序段的运行结果是()。

char a[7]=″abcedf″;char b[4]=″ABC″;strcpy(a,b);printf(“%c”,a[5]);A. dB. \0C. eD. f11、一维double型数组a长度为10,则实际所占内存字节数为()。

A. 20B. 40C. 60D. 8012、字符串a=“hello”,则函数调用strlen(a)的返回值为()。

A. 4B. 5C. 6D. 413、在C语言中,&作为单目运算符时表示的是()。

A.地址与B.取地址C.输入地址D.输出地址14、对不同类型的数据有不同的格式字符。

例如:()格式字符是用来输出十进制整数,()格式字符是用来输出一个字符串。

A.c,sB.s,dC.d,cD.d,s15、do-while语句的特点是()。

C语言选择题99道

C语言选择题99道

1.有以下程序int f1(int x,int y){ return x>y?x:y; }int f2(int x,int y){ return x>y?y:x; }main(){int a=4,b=3,c=5,d,e,f;d=f1(a,b); d=f1(d,c);e=f2(a,b); e=f2(e,c);f=a+b+c-d-e;printf("%d,%d,%d\n",d,f,e);}执行后输出的结果是______。

A:3,4,5 B:5,3,4C:5,4,3 D:3,5,4答案:C348、有以下程序int f1(int x,int y){return x>y?x:y;}int f2(int x,int y){return x>y?y:x;} main(){int a=4,b=3,c=5,d=2,e,f,g;e=f2(f1(a,b),f1(c,d));f=f1(f2(a,b),f2(c,d));g=a+b+c+d-e-f;printf("%d,%d,%d\n",e,f,g);}程序运行后的输出结果是______。

A:4,3,7 B:3,4,7C:5,2,7 D:2,5,7答案:A2.设有定义:float a=2,b=4,h=3;,以下C语言表达式中与代数式1/2(a+b)h计算结果不相符的是______。

A:(a+b)*h/2B:(1/2)*(a+b)*hC:(a+b)*h*1/2D:h/2*(a+b)答案:B3.设有定义:float a=2,b=4,h=3;,以下C语言表达式中与代数式1/2(a+b)h计算结果不相符的是______。

A:(a+b)*h/2B:(1/2)*(a+b)*hC:(a+b)*h*1/2D:h/2*(a+b)答案:B261、已有定义:char c;,程序前面已在命令中包含ctype.h文件。

不能用于判断c中的字符是否为大写字母的表达式是______。

C语言语法选择题(附答案)

C语言语法选择题(附答案)

C语言语法选择题(附答案)1. 下列关于C语言的说法中,错误的是:a. C语言不支持面向对象编程b. C语言是一种过程式编程语言c. C语言的语法较为简洁d. C语言是一种静态类型语言Answer: a2. 在C语言中,以下选项中,不是合法的变量命名的是:a. myVarb. _varc. 123vard. Var123Answer: c3. C语言中的sizeof()函数用于:a. 获取变量的大小(字节数)b. 获取变量的值c. 计算变量的平均值d. 判断变量的类型Answer: a4. 下列代码中,会出现语法错误的是:int x = 10;if (x > 5){printf("Hello, World!\n");}Answer: None5. 在C语言中,以下选项中,不是合法的注释方式的是:Answer: c6. C语言中的条件运算符(?:)的作用是:a. 进行加法运算b. 进行乘法运算c. 进行条件判断d. 进行字符串连接Answer: c7. 在C语言中,以下选项中,不是合法的数据类型的是:a. intb. floatc. stringd. doubleAnswer: c8. 下列代码中,会发生类型转换的是:int a = 10;double b = 2.5;double c = a + b;Answer: a + b9. C语言中,用于循环控制的关键字是:a. whileb. forc. dod. All of the aboveAnswer: d10. 在C语言中,以下选项中,不是合法的运算符的是:a. +b. *c. ^d. %Answer: c。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言选择题1.下面叙述正确的是__C____。

A、算法的执行效率与数据的存储结构无关B、算法的空间复杂度是指算法程序中指令(或语句)的条数C、算法的有穷性是指算法必须能在执行有限个步骤之后终止D、以上三种描述都不对2.在一棵二叉树上第5层的结点数最多是__B____。

A、8B、16C、32D、153.在软件开发中,下面任务不属于设计阶段的是__D____。

A、数据结构设计B、给出系统模块结构C、定义模块算法D、定义需求并建立系统模型4.对建立良好的程序设计风格,下面描述正确的是__A____。

A、程序应简单、清晰、可读性好B、符号名的命名要符合语法C、充分考虑程序的执行效率D、程序的注释可有可无5.下面对对象概念描述错误的是___A___。

A、任何对象都必须有继承性B、对象是属性和方法的封装C、对象间的通讯靠消息传递D、操作是对象的动态性属性6.下面不属于软件工程的3个要素的是__D____。

A、工具B、过程C、方法D、环境7.程序流程图(PFD)中的箭头代表的是__B____。

A、数据流B、控制流C、调用关系D、组成关系8.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。

其中数据独立性最高的阶段是__A____。

A、数据库系统B、文件系统C、人工管理D、数据项管理9.用树形结构来表示实体之间联系的模型称为___B___。

A、关系模型B、层次模型C、网状模型D、数据模型10.关系数据库管理系统能实现的专门关系运算包括__B___。

A、排序、索引、统计B、选择、投影、连接C、关联、更新、排序D、显示、打印、制表11.以下程序的输出结果是__B____。

main(){ char a[10]={'1','2','3','4','5','6','7','8','9',0},*p;int i ;i=8;p=a+i;printf("%s\n",p-3);}A、6B、6789C、'6'D、78915.设有说明int(*ptr)[M];,其中的标识符ptr是___C___。

A、M个指向整型变量的指针B、指向M个整型变量的函数指针C、一个指向具有M个整型元素的一维数组的指针D、具有M个指针元素的一维指针数组,每个元素都只能指向整型变量16.以下程序的输出结果是___A___。

main(){ int n=4;while(n--)printf("%d ",--n);}A、2 0B、3 1C、3 2 1D、2 1 017.设有以下语句:char str1[]="string",str2[8],*str3,*str4="string";则下列选项中,___C___不是对库函数strcpy的正确调用,此库函数用来复制字符串。

A、strcpy(str1,"HELLO1");B、strcpy(str2,"HELLO2");C、strcpy(str3,"HELLO3");D、strcpy(str4,"HELLO4");18.下面程序#include<stdio.h>#include<string.h>main(){ char *p1="abc",*p2="ABC",str[50]="xyz";strcpy(str+2,strcat(p1,p2) );printf("%s\n",str);}的输出是___D___。

A、xyzabcABCB、zabcABCC、yzabcABCD、xyabcABC19.C语言中,下列叙述正确的是__D____。

A、不能使用do-while语句构成的循环B、do-while语句构成的循环,必须用break语句才能退出C、do-while语句构成的循环,当while语句中的表达式值为非零时结束循环D、do-while语句构成的循环,当while语句中的表达式值为零时结束循环20.下面程序main(){ int x=100, a=10, b=20, ok1=5, ok2=0;if(a<b)if(b!=15)if(!ok1) x=1;else if(ok2) x=10;x=-1;printf("%d\n",x);}的输出是___A___。

A、-1B、0C、1D、不确定的值21.以下程序的输出结果是_C_____。

main(){ int i,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[1][1];for(i=0;i<4;i+=2) printf("%d",p[i]);}A、52B、51C、53D、9722.若有说明:long *p,a;则不能通过scanf语句正确给输入项读入数据的程序段是__A____。

A、*p=&a;scanf("%ld",p);B、p=(long *)malloc(8);scanf("%ld",p);C、scanf("%ld",p=&a);D、scanf("%ld",&a);23.请读程序:#include <stdio.h>main(){int num=0;while( num <=2){num++; printf("%d\n",num);}}上面程序的输出结果是__C____。

① 1 ② 1 ③ 1 ④ 12 2 23 34A、①B、②C、③D、④24.请选出合法的C语言赋值语句___C___。

A、a=b=58B、i++;C、a=58,b=58;D、k=int(a+b);25.请选出以下程序的输出结果___B___。

#include <stdio.h>sub(x,y,z)int x,y,*z;{ *z=y-x;}main(){int a,b,c;sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);printf("%d,%d,%d\n",a,b,c);}A、5,2,3B、-5,-12,-7C、-5,-12,-17D、5,-2,-726.若x是整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是_A_____。

A、pb=&x;B、pb=x;C、*pb=&x;D、*pb=*x27若执行下面程序时从键盘上输入5,main(){int x;scanf("%d",&x);if(x++>5) printf("%d\n",x);else printf("%d\n",x--);}则输出是__B____。

A、7B、6C、5D、428.若执行下面的程序时从键盘上输入3和4,main(){ int a,b,s;scanf("%d %d",&a,&b);s=a;if(a<b)s=b;s=s*s;printf("%d\n",s);}则输出是__B____。

A、14B、16C、18D、2029.设a、b和c都是int型变量,且a=3、b=4、c=5,则下面的表达式中,值为0的表达式是____D__。

A、'a'&&'b'B、a<=bC、a||+c&&b-cD、!((a<b)&&!c||1)30.设ch是char型变量,其值为A,且有下面的表达式ch=(ch>='A'&&ch<='Z')?(ch+32):ch上面表达式的值是__B____。

A、AB、aC、ZD、z31.设int a=12,则执行完语句a+=a-=a*a后,a的值是__D____。

A、552B、264C、144D、-26432.以下for语句构成的循环执行了___C___次。

#include <stdio.h>#define N 2#define M N+1#define NUM (M+1)*M/2main(){ int i,n=0;for(i=1;i<=NUM;i++) {n++; printf("%d",n);}printf("\n");}A、5B、6C、8D、933.以下程序的输出结果是___B___。

#include <stdio.h>#define FUDGE(y) 2.84+y#define PR(a) printf("%d",(int)(a) )#define PRINT1(a) PR(a);putchar('\n')main(){ int x=2;PRINT1(FUDGE(5)*x);}A、11B、12C、13D、1534.指针s所指字符串的长度为__B____。

char*s="\t1Name\\Address\n";A、19B、15C、18D、说明不合法35.不能把字符串:Hello!赋给数组b的语句是__B____。

A、char b[10]={'H','e','l','l','0','!'};B、char b[10]={'h','e','l','l','0','!'};C、char b[10];strcpy(b,"Hello!");D、char b[10]="Hello!";36.若有以下说明:int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g;则值为4的表达式是__D____。

A、a[g-c]B、a[4]C、a['d'-'c']D、a['d'-c]37.若程序中有以下的说明和定义:struct abc{ int x;char y; }struct abc s1,s2;则会发生的情况是_A_____。

相关文档
最新文档