C语言选择题题库
C语言试题库(完整版)
C语言试题库一、单项选择第一章 C 语言概述〔 1〕一个 C程序的执行是从A、本程序的 MAIN函数开场,到 MAIN 函数完毕。
B、本程序文件的第一个函数开场,到本程序文件的最后一个函数完毕。
C、本程序的 MAIN函数开场,到本程序的最后一个函数完毕。
D、本程序文件的第一个函数开场,到本程序的MAIN函数完毕。
〔 2〕以下表达正确的选项是A、在 C程序中, MAIN函数必须位于程序的最前面。
B、 C 程序的每行中只能写一条语句。
C、 C 语言本身没有输入输出语句。
D、在对一个 C程序进展编译的过程中,可发现注释中的拼写错误。
〔 3〕 C 语言规定,在一个源程序中,MAIN主函数的位置是在:A、必须在最前面。
B、必须在系统调用的库函数的后面C、可以在任意位置。
D、必须在最后面〔 4〕一个 C程序是由:A、一个主程序和假设干子程序组成B、函数组成C、假设干过程组成D、假设干子程序组成〔 5〕以下表达不正确的选项是:A、一个 C源程序可由一个或多个函数组成B、一个 C源程序必须包含一个MAIN函数C、 C 程序的根本组成单位是函数D、在 C程序中,注释说明只能位于一条语句的后面第二章数据类型、运算符与表达式〔 1〕假设 x, i, j, k都是int型变量,那么计算下面表达式后,x的值为x=〔 i =4 , j=16, k=32〕A、4B、16C、32D、52(2〕以下四组选项中,均不是C语言键字的选项是A、 define , IF, typeB、getc, char, printfC、include, scanf,case E、 if, struct, type(3〕下面四个选项中,均是不合法的用户标识符的选项是A、A,P _0, doB、 float,1a0, _AC、 b-a, goto, intD、_123, temp, INT(4〕假设有代数式3 ae/bc ,那么正确的C语言表达式是A、 a/b/c*e*3B、 3*a*e/bcC、 3*a*e/b*cD、 a*e/c/b*3〔 5〕各变量的类型说明如下:int k, a, b;unsinged long w=5;double x=1.42;那么以下不符合C语言语法的表达式是A、 x%(-3)B、 w+=-2;C、 k=(a=2,b=3,a+b)D、 a+=a-=(b=4)*(a=3)第三章简单C程序设计〔1〕 putchar 函数可以向终端输出一个A、整型变量表达式值B、实型变量值C、字符串D、字符或字符型变量值〔2〕假设 x,y 均定义为 int 型, z 定义为 double 型,以下合法的 scanf 函数调用语句是A、 scanf( “%d%lx,%le〞,&x,&y,&z);B、 scanf( “%2d*%d%lf〞,&x,&y,&z);C、 scanf( “%x%*d%o〞,&x,&y,&z);D、 scanf( “%x%o%6.2f〞,&x,&y,&z);(3) 当输入数据的形式为:25,13,10<回车 >时,以下程序的输出结果为main(){int x,y,z;scanf( “%d%d%d〞,&x,&y,&z);printf( “x+y+z=%d n〞,x+y+z);}A、 x+y+z=48B、 x+y+z=35C、 x+z=35D、不确定值(4)以下能正确的定义整型变量 a,b 和 c,并对它们赋初值为5的语句是A、 int a=b=c=5;B、 int a, b, c=5;C、 a=5, b=5, c=5;D、 a=b=c=5;(5)假设有以下定义,那么正确的赋值语句是int a,b;float x;A、 a=1, b=2;B、 b++;C、 a=b=5;D、 b=int(x);第四章选择构造程序设计(1〕能正确表示“当 x 的值在 [1 , 10] 和[200 ,210] 的X围为真,否那么为假〞的表达式是A、(x>=1)&&(x<=10)&&(x.>=200)&&(x<=210)B、(x>=1) ││ (x<=10)││ (x.>=200)││ (x<=210)C、(x>=1) &&(x<=10)││ (x.>=200) &&(x<=210)D、(x>=1) ││ (x<=10)&& (x.>=200)││ (x<=210)〔 2〕以下程序的运行结果是#include “stdio.h〞main(){int a,b,d=241;a=d/100%9;b=(-1)&&(-1);printf( “%d,%d〞,a,b);}A、6,1B、2,1C、6,0D、2,0〔 3〕请阅读以下程序:main(){int a=5 , b=0 , c=0;if (a+b+c) printf(“* * *n〞); else printf(“$ $ $n〞); }以上程序。
(完整版)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语言概述一、选择题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语言题库(选择题)1.C语言源程序的基本单位是()。
A.过程B.函数C.子程序D.标识符2.下列字符序列中,可用作C标识符的一组字符序列是()。
A. S.b,sum,average,_aboveB. class,day,lotus_1,2dayC. #md,&12x,month,student_n!D. D56,r_1_2,name,_st_13.以下标识符中,不能作为合法的C用户定义标识符的是()。
A.a3_b3B.voidC._123D.IF4.以下数据中,不正确的数值或字符常量是()。
A.0B.5LC.o13D.98615.以下数值中,不正确的八进制数或十六进制数是()。
A.0x16B.16C.-16D.0xaaaa6.以下的选择中,正确的赋值语句是()。
A.a=1,b=2B.j++C.a=b=5;D.y=int(x)7.以下运算符中,优先级最高的运算符是()。
A.?:B.++C.&&D.,8.在C语言中,能代表逻辑值“真”的是()。
A.TRUEB.大于0的数C.非0整数D.非0的数9.下列变量说明语句中,正确的是()。
A.char:a b c;B.char a;b;c;C.int x;z;D.int x,z;10.下列字符序列中,不可用作C语言标识符的是()。
A.b70B.#abC.symbolD.a_111.以下不正确的叙述是()。
A.在C程序中所用的变量必须先定义后使用。
B.程序中,APH和aph是两个不同的变量。
C.若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变。
D.当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值。
12.以下标识符中,不能作为合法的C用户定义标识符的是()。
A.ForB.PrintfC.WORDD.sizeof13.以下标识符中,不能作为合法的C用户定义标识符的是()。
A.answerB.toC.signedD._if14.以下标识符中,不能作为合法的C用户定义标识符的是()。
c语言考试题及答案
c语言考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级语言B. C语言可以直接被计算机执行C. C语言具有结构化的特点D. C语言具有跨平台的特性答案:B2. C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. doubleD. char答案:A3. 在C语言中,以下哪个运算符用于取模运算?A. %B. /C. *D. -答案:A4. 下列关于数组的描述中,正确的是:A. 数组必须在程序开始时初始化B. 数组的元素可以是不同的数据类型C. 数组的索引从1开始D. 数组的声明必须指定数组的大小答案:D5. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. functionD. define答案:B6. C语言中,用于表示逻辑“与”操作的运算符是:A. &&B. ||C. !D. &答案:A7. 下列哪个选项是C语言中合法的注释?A. // 这是一个注释B. /* 这是一个注释 */C. // 这是一个注释/* 这是一个注释 */D. /* 这是一个注释 */答案:A8. C语言中,用于定义一个空指针的值是:A. NULLB. 0C. falseD. none答案:A9. 下列关于指针的描述中,错误的是:A. 指针可以存储变量的地址B. 指针可以存储函数的地址C. 指针可以存储数组的索引D. 指针可以存储指针的地址答案:C10. 在C语言中,用于定义一个字符型指针的声明是:A. char *ptr;B. int *ptr;C. float *ptr;D. double *ptr;答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型数组的语法是:______ int array[10];。
答案:int2. 如果一个变量的值是10,那么表达式sizeof(&var)的结果是:______。
大学c语言试题题库及答案
大学c语言试题题库及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述,正确的是:A. C语言是一种编译型语言B. C语言是一种解释型语言C. C语言是一种面向对象的语言D. C语言不支持函数答案:A2. 在C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. charD. double答案:A3. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. intD. _int答案:B4. C语言中,用于定义一个浮点型数组的语法是:A. int array[10];B. float array[10];C. char array[10];D. double array[10];答案:B5. 在C语言中,哪个运算符用于取模运算?A. %B. /C. *D. +答案:A6. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. ==D. =答案:A7. 在C语言中,用于定义一个字符型数组的语法是:A. int array[10];B. float array[10];C. char array[10];D. double array[10];答案:C8. C语言中,用于声明一个函数的关键字是:A. intB. floatC. voidD. return答案:C9. 下列哪个选项是C语言中的循环结构?A. ifB. switchC. forD. while答案:C10. 在C语言中,用于定义一个字符串常量的语法是:A. "Hello"B. 'Hello'C. "Hello"[10]D. 'Hello'[10]答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以连接两个字符串。
答案:+2. C语言中的________关键字用于声明一个无返回值的函数。
(完整版)c语言选择题题库,考试必考
C语言选择题精选*1、A一个C程序的执行是从_____。
A)本程序的main函数开始,到main函数结束√B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束*2、C以下叙述正确的是:A)在C程序中,main函数必须位于程序的最前面×B)C程序的每行中只能写一条语句×C)C语言本身没有输入输出语句D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误×*3、D以下叙述不正确的是。
A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面*4、CC语言规定:在一个源程序中,main函数的位置。
A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后*5、B一个C语言程序是由A)一个主程序和若干子程序组成 B)函数组成C)若干过程组成 D)若干子程序组成*6、A在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为A)char<int <1ong int<=float<doubleB)char=int<1ong int<=float<doubleC)char< int <1ong int=float=doubleD)char=int =1ong int<=float<double*7、C若x,i,j和k都是int型变量,则执行下面表达式后x的值为x=(i=4,j=16,k=32)A)4 B)16 C)32 D)52*8、B假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是:A)7 B)8 C)6 D)2*9、A下列四组选项中,均不是C语言关键字的选项是A)define B)getc C)include D)whileIF char scanf gotype printf case pow*10、B下面四个选项中,均是C语言关键字的选项是A)auto B)switch C)signed D)ifenum typedef union structinclude continue scanf type*11、C下面四个选项中,均是不合法的用户标识符的选项是。
C语言选择题题库
章节题干A B C2不合法的字符常量是( ).'\t'"A"'a' 2合法的字符常量是( ) .'\084''\84''ab'1C语言源程序的基本单位是()。
过程函数子程序1下列字符序列中,可用作C标识符的一组字符序列是()。
S.b,sum,average,_aboveclass,day,lotus_1,2day#md,&12x,month,student_n!1以下标识符中,不能作为合法的C用户定义标识符的是()。
a3_b3void_1231以下数据中,不正确的数值或字符常量是()。
05L o131以下数值中,不正确的八进制数或十六进制数是()。
0x1616-161以下的选择中,正确的赋值语句是()。
a=1,b=2j++a=b=5;1以下运算符中,优先级最高的运算符是()。
?:++&&1在C语言中,能代表逻辑值“真”的是()。
True大于0的数非0整数1下列变量说明语句中,正确的是()。
char:a b c;char a;b;c;int x;z;1下列字符序列中,不可用作C语言标识符的是()。
b70#ab symbol1以下不正确的叙述是()。
在C程序中所用的变量必须先定义后使用程序中,APH和aph是两个不同的变量若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a1以下标识符中,不能作为合法的C用户定义标识符的是()。
For Printf WORD1以下标识符中,不能作为合法的C用户定义标识符的是()。
answer to signed1以下标识符中,不能作为合法的C用户定义标识符的是()。
putchar_double_1231以下数据中,不正确的数值或字符常量是()。
8.9e1.2100xff001以下数据中,不正确的数值或字符常量是()。
c660xaa1以下运算符中,优先级最高的运算符是()。
C语言题库:选择题
1 C语言提供的合法的关键字是(D)A SwicthB cherC CaseD default2设有如下的定义 ( A )int x[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};int (*pt)[4]=x;能与数组元素x[2][3]相等的表达式是:A *(*(pt+2)+3)B *(pt+2)+3C *(pt+2+3)D (*pt+2)+33以下不正确的叙述是(D )A 在C程序中,逗号运算符的优先级最低B 在C程序中,APH和aph是两个不同的变量C 若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变D 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值4 下面C语言程序段的功能是(D )file *fp;fp=fopen("test.dat","wb");A 以读方式打开文本文件test.datB 以写方式打开文本文件test.datC 以读方式打开二进制文件test.datD 以写方式打开二进制文件test.dat5.有语句for(i=1;10;++i),其中表达式i=1将被执行( B )次A 0B 1C 无穷次D 不确定6 设有数组定义:char array[]=”China”;,则数组array所占的空间为( C )A. 4B. 5C. 6D. 77 已知 int x=10,y=20,z=30;以下语句执行后x,y,z的值是( B )if(x>y) z=x;x=y;y=z;A x=10,y=20,z=30B x=20,y=30,z=30C x=20,y=30,z=10D x=20,y=30,z=208 C语言中基本的数据类型包括(C)A 整型,实型,字符型和逻辑型B 整型,实型,字符型和数组型C 整型,实型,字符型和枚举型D 整型,实型,字符型和指针型9,C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递是 (B )A 地址传递B 值传递C 实参数传给形参,并由形参传回来给实参D 由用户指定传递方式10 下面的for循环(C )for(x=0,y=0;(y!=123)&&(x<4);x++);A 是无限循环B 循环次数不定C 执行4次D 执行3次11定义char *aa="12345";,则执行语句printf("%c",*aa++);后,正确的输出结果是(A) A 1 B 2 C 12345 D 234512下列说法中正确的是(A)A 在程序清单的任何地方都可以插入一个或多个空格符号B 程序的执行总是从源程序的第一行开始执行的C 分号和回车符号都可以作为一个语句的结束符号D 函数名是由程序设计人员按照“标识符”的规则选取的13 函数printf("\abcd\b\102\103")的输出结果是(D)A bc\101\103B abcd\102\103C abc\102\103D bcbc14 已知:char a;int b;float c;double d;则表达式2+a+9*b*5*c-5*d的结果是(A)。
C语言试题库(含答案)
b=-5;}
print f(“%d\n”,a);}
上面程序的输出结果是
A、7
B、8
C、9
D、10
标准答案:B
【14】有以下程序段:
int i,j;
for(i=0;i<5;++i)
for(j=i;j<5;++j)
print f(“*”);
则执行以上的程序片段后,输出‘*’个数是
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;
C、C语言源程序中,注释可以出现在任何位置
D、最小的C源程序中没有任何内容
标准答案:C
【2】返回值为void的函数,其含义是()。
A、调用函数之后,被调用的函数没有返回值
B、调用函数之后,被调用的函数不返回
C、调用函数之后,被调用的函数的返回值为任意的类型
D、以上三种说法都是错误的
标准答案:A
【3】以下函数
【6】下面程序的输出是
main()
{int a=-1,b=4,k;
k=(a++<=0)&&(!(b--<=0));
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语言选择题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语言选择题(含答案)选择题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==1B) !(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)1B)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语言作为一门广泛应用的编程语言,其学习过程中,选择题是检验学习效果的重要方式之一。
下面是一个C语言选择题题库及详解答案的示例,供学习者参考。
1. 以下哪个是C语言的标准输入输出库函数?A. printf()B. scanf()C. both A and BD. None of the above答案:C详解:在C语言中,`printf()` 和 `scanf()` 都是标准输入输出库函数,分别用于输出和输入。
2. C语言中,以下哪个关键字用于定义函数?A. ifB. elseC. voidD. function答案:C详解: `void` 关键字用于定义函数的返回类型,表示该函数没有返回值。
3. 下面哪个是C语言中的合法变量名?A. 2variableB. variable2C. variable-nameD. variable_name答案:B详解: C语言中的变量名必须以字母或下划线开头,可以包含字母、数字和下划线,但不能以数字开头。
4. 在C语言中,以下哪个语句用于结束程序的执行?A. exit();B. return;C. break;D. continue;答案:A详解: `exit()` 函数用于立即结束程序的执行,而 `return` 用于结束函数的执行并返回一个值。
5. 以下哪个是C语言中的控制结构?A. 循环B. 条件判断C. 函数D. 所有选项答案:D详解: C语言中的控制结构包括循环(如 for, while, do-while)、条件判断(如 if, switch-case)和函数。
6. 在C语言中,以下哪个操作符用于计算两个数的乘积?A. +B. -C. *D. /答案:C详解: `*` 操作符用于计算两个数的乘积。
7. 下面哪个是C语言中数组的正确声明方式?A. int numbers = {1, 2, 3};B. int numbers[] = {1, 2, 3};C. int numbers[3] = {1, 2, 3};D. All of the above答案:D详解: C语言中数组可以有三种声明方式:不指定大小并初始化(A),指定大小并初始化(C),或者只指定大小不初始化(未列出)。
C语言选择题题库
C语言选择题题库C语言程序设计题库说明一本题库适用对象计算机应用技术计算机软件软件技术计算机网络技术与计算机控制技术等专业二本题库包含有175道选择题三本题库所有题目均附有答案一、选择题下列各题ABCD四个选项中,只有一个选项是正确的,请将正确选项涂在答题卡的相应位置上,答在试卷上不得分。
1、不合法的整数是()。
A)0x35 B)43.6 C)0532D)-3462、下列合法的字符常量是()。
A)“f”B)x C)65 D)‘\Xab’3、设有整型变量x,单精度变量y=5.5,表达式x=float(y*3+((int)y%4))执行后,x的值为()。
A)17B)17.500000 C)17.5D)1.54、在C语言中,负整数在内存中以()形式释放。
A)补码B)BCD码C)反码D)十进制数5、在C语言中,要求参加运算的数必须是整数的运算符是()。
A)/ B)!C)%D)= = 6、()是C语言中非法的数据类型关键字。
入运算的表达式是()。
A)a=(a*100+0.5)/100.0B)a=(a*100+0.5)/100C)a=(int)(a*100+0.5)/100.0D)a=(a/100+0.5)*100.012、定义a为整型,下列表达式a=3>6的运行后,a的值为()。
A)0 B)1 C)3 D)表达式错误13、如果a=1,b=2,c=3,d=4,则条件表达式a>b?a:c>d?c:d的值为()。
A)1 B)2 C)3 D)414、对于条件表达式(M)?(a++):(a--),其中的表达式M等价于()。
A)M= =0 B)M= =1 C)M!=0D)M!=115、在x值处于-2到2,4到8时值为“真”,否则为“假”的表达式是()。
A)(2>x>-2)||(4>x>8)B)((x<=-2)||(x>=2)||((x>4)||(x>=8))C)(x<2)&&(x>=-2)&&(x>4)&&(x<8)D)(x>-2)&&(x>4)||(x<8)&&(x<2)16、已知字母a的ASC||的十进制代码为97,则执行下列语句后输出为()。
(完整版)C语言考试题库及答案
(完整版)C语言考试题库及答案一、选择题1. 以下哪个选项是C语言的合法标识符?A. intB. 2abcC. voidD. a+b答案:C2. 在C语言中,下列哪个选项是正确的数据类型?A. floatB. integerC. doubleD. All of the above答案:D3. 若变量定义如下:int a = 5;,则执行语句printf("%d", a++); 后,a的值是多少?A. 4B. 5C. 6D. 无法确定答案:C4. 以下哪个函数用于动态分配内存?A. malloc()B. alloc()C. new()D. calloc()答案:A5. 在C语言中,哪个运算符用于取模(取余)?A. %B. /C. &D. |答案:A以下是判断题部分:6. C语言中的数组名可以作为指向该数组首元素的指针使用。
()答案:正确7. 在C语言中,结构体变量可以作为函数的参数传递。
()答案:正确8. 在C语言中,静态存储类别的变量在程序运行期间始终占据内存空间。
()答案:正确二、填空题9. 在C语言中,定义一个整型变量需要使用关键字______。
答案:int10. 若变量定义如下:int a = 10;,则执行语句printf("%d", a--); 后,a的值是______。
答案:911. 在C语言中,用于动态分配内存的函数是______。
答案:malloc12. 在C语言中,用于释放动态分配的内存的函数是______。
答案:free13. 在C语言中,用于清空标准输入缓冲区的函数是______。
答案:getchar()三、编程题14. 编写一个C语言程序,实现以下功能:输入一个整数,输出它的阶乘。
答案:```c#include <stdio.h>int main() {int n, i;long factorial = 1;printf("Enter an integer: ");scanf("%d", &n);if (n < 0) {printf("Factorial of a negative number doesn't exist.\n");} else {for (i = 1; i <= n; i++) {factorial = i;}printf("Factorial of %d is %ld\n", n, factorial);}return 0;}```15. 编写一个C语言程序,实现以下功能:输入一个字符串,判断它是否是回文(正读和反读都一样的字符串)。
c语言c语言考试题库及答案
c语言c语言考试题库及答案一、选择题1. 在C语言中,用于定义变量的关键字是:A. defineB. varC. intD. let答案:C2. 下列哪个是C语言中的合法标识符?A. 2variableB. variable2C. variable-twoD. variable#答案:B3. 在C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C4. C语言中,以下哪个是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello\nWorld"D. "Hello\tWorld"答案:A5. 以下哪个是C语言中的控制语句?A. ifB. switchC. both A and BD. none of the above答案:C二、填空题6. 在C语言中,一个基本的程序结构包括____、____和____。
答案:预处理指令;函数定义;语句7. 一个C语言程序的执行从____函数开始。
答案:main8. 在C语言中,使用____关键字可以定义一个函数。
答案:void 或其他数据类型9. 一个C语言数组的元素默认情况下是按照____顺序存储的。
答案:连续10. C语言中的____运算符用于连接字符串。
答案:+三、简答题11. 解释C语言中指针的概念。
答案:指针是一种变量,它存储了另一个变量的内存地址。
通过指针,可以直接操作内存地址中的数据,实现数据的间接引用。
12. 描述C语言中结构体的定义和使用。
答案:结构体是一种用户自定义的数据类型,它允许将多个不同类型的变量组合成一个单一的类型。
定义结构体时,使用struct关键字,然后定义结构体的名称和成员。
使用结构体时,可以创建结构体变量,并通过点(.)运算符访问其成员。
四、编程题13. 编写一个C语言程序,计算并输出1到100的整数之和。
(完整版)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语言选择题库
复习题一、单项选择题(每题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语句的特点是()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言程序设计题库说明一本题库适用对象计算机应用技术计算机软件软件技术计算机网络技术与计算机控制技术等专业二本题库包含有175道选择题三本题库所有题目均附有答案一、选择题下列各题ABCD四个选项中,只有一个选项是正确的,请将正确选项涂在答题卡的相应位置上,答在试卷上不得分。
1、不合法的整数是()。
A)0x35 B)43.6 C)0532 D)-3462、下列合法的字符常量是()。
A)“f” B)x C)65 D)‘\Xab’3、设有整型变量x,单精度变量y=,表达式x=float(y*3+((int)y%4))执行后,x的值为()。
A)17 B)17.500000 C) D)4、在C语言中,负整数在内存中以()形式释放。
A)补码 B)BCD码 C)反码 D)十进制数5、在C语言中,要求参加运算的数必须是整数的运算符是()。
A)/ B)!C)% D)= =6、()是C语言中非法的数据类型关键字。
A)float B)singed C)integer D)Char7、现已定义整形变量int i=1;执行循环语句while(i++<5);后i的值为()。
A)1 B)5 C)6 D)以上三个答案都不正确8、下列语句的输出结果是()。
printf(“%f\n”,(float)(2+4)/2);A)有语法错误不能通过编译 B)3 C)D)9、C语言中,整数-8在内存中的存储形式是()。
A)1111,1111,1111,1000 B)1000,0000,0000,1000 C)0000,0000,0000,1000 D)1111,1111,1111,0111 10、设C语言中,int类型数据占2个字节,则long类型数据占()个字节。
A)1 B)2 C)8 D)411、若变量a已说明为float类型,则能实现将a中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是()。
A)a=(a*100+/ B)a=(a*100+/100C)a=(int)(a*100+/ D)a=(a/100+*12、定义a为整型,下列表达式a=3>6的运行后,a的值为()。
A)0 B)1 C)3 D)表达式错误13、如果a=1,b=2,c=3,d=4,则条件表达式a>ba:c>dc:d的值为()。
A)1 B)2 C)3 D)414、对于条件表达式(M)(a++):(a--),其中的表达式M等价于()。
A)M= =0 B)M= =1 C)M!=0 D)M!=115、在x值处于-2到2,4到8时值为“真”,否则为“假”的表达式是()。
A)(2>x>-2)||(4>x>8)B)((x<=-2)||(x>=2)||((x>4)||(x>=8))C)(x<2)&&(x>=-2)&&(x>4)&&(x<8)D)(x>-2)&&(x>4)||(x<8)&&(x<2)16、已知字母a的ASC||的十进制代码为97,则执行下列语句后输出为()。
Char a=‘a’;a--;printf(“%d,%c\n”,a+‘2’-‘0’,a+‘3’-‘0’);A)a,c B)a—运算不合法,故有语法错误C)98,c D)格式描述和输出项不匹配,输出无定值17、下列语句中错误的是()。
A)x=sizeof(int); B)x=sizeof;C)printf(“%d”,a=a+1,b--,c+1);D)printf(“%d”,++x,x++);18、C语言中,逻辑“真”等价于()。
A)大于零的数 B)大于零的整数C)非零的数 D)非零的整数19、下列语句中,符合语法的语句式()。
A)a+b=3 B)a=7 C)a=c+b+3=6; D)a=8,b=a+7;20、若x为float型变量,则以列程序段结果是()。
x=;printf(“%-2.1f”,x);A)输出格式描述符的域宽度不够,不能输出B)输出为C)输出为 D)输出为21、下面函数的功能是()。
Int funl(char*x){char*y=x;while(*y++);return(y-x-1);}A)求字符串的长度 B)比较两个字符串的大小 C)将字符串x复制到字符串yD)将字符串x连接到字符串y后面22、指针变量a所指的字符串长度为()。
Char*a=”\n\”My Name is \”Zhang Li\”\n”;A)26 B)27 C)28 D)2323、若有以下说明和语句,则输出结果是()。
Char*sp=”\\\”\n”;Printf(“%d”,strlen(sp));A)6 B)3 C) 5 D)字符串中有非法自负,输出值不定24、若有以下的说明语句,则对字符串中字符的不正确引用是(其中0<=i<6)( ).Char*strp=“string”;A)*strp B)*(strp+i) C)strp[i] D)strp25、函数调用:strcat(strcpy(str1,str2),str3)的功能是()。
A)将串str1复制到串str2中后再连接到串str3之后B)将串str1连接到串str2之后再复制到串str3之后C)将串str2复制到串str1中后再将串str3连接到串str1之后D)将串str2连接到串str1之后再将串str1复制到串str3之后26、若使用下述程序段将整数12和浮点数分别赋给变量a和b,那么输入应该式()。
int a;float b;scanf(“a=%d,b=%f”,&a,&b);A)12 B)a=12, b= C)12, D)a=12 b=27、对下面的程序说法正确的是()。
main(){int x+3,y=0,z=0;if(x=y+z)printf(“****”);elseprintf(“####”);}A)有语法错误,不能通过编译 B)输出为**** C)输出为# # # # D)通过编译,但是不能运行28、下面程序的输出是()。
main(){int x=10,y=3;printf(“%d\n”,y=x%y);}A)0 B)1 C)3 D)不确定的值29、()是不正确的C语言赋值语句。
A)a=a+1; B)i++; C)a*=1,b=8; D)a=330、C语言程序的三种基本程序是()。
A)顺序结构,选择结构,循环结构 B)递归结构,循环结构,转移结构C)嵌套结构,递归结构,顺序结构 D)循环结构,转移结构,顺序结构31、执行下面语句后的输出结果为()。
int i=-1;if (i<=0)printf(“****\n”);i=2;elseprintf(“%%%%\n”);A)**** B)%% C)%%%%c D)有语法错误。
不能正确执行32、下述语句中,()中的if 语法有错误。
A)if(x y);B)if(x= =y)x+y;C)if(x!=y)scanf(“%d”,x)elsescanf(“%d”,y);D)if(x y){x++;y++;}33、以下程序段()。
int x=1,y=4;printf(x<y”x=%d”:”y=%d”,x,y);A)输出控制格式错误 B)输出:x=1 C)输出:y=1 D)输出:y=434、为了避免嵌套的条件语句if-else的二义性,C语言规定:else 与()是正确的。
A)缩排位置相同的if B)其之前最近的if C)其之后if D)同一行上的if35、下列关于switch语句和break语句的结论中,只有()是正确的。
A)break语句是switch语句的一部分B)在switch语句中可以根据需要使用或不使用break语句C)在switch语句中必须使用break语句D)以上三个结论有两个是正确的36、设I和x都是int类型,则对于for循环语句for(i=0,x=0;i<9;i++),下列哪句话正确( )。
A)执行8次B)执行9次 C)是无限循环 D)循环体一次也不执行37、下述程序的输出结果是()。
#include<>main(){ int Y=100;while(Y--);printf(“y=%d”,Y);}A)Y=0 B)Y=1 C)Y=随机值D)Y=-138、以下for循环语句()。
for(; ;)printf(“*”);A)判断循环结束的条件不合法B)是无限循环 C)循环一次也不执行 D)循环只执行一次39、以下程序段执行后输出结果()。
int i;for(i=1; ; i++)printf(“%d”,i++);A)1 B)2 C)3 D死循环40、char(*A)[5],则标识符A的意义时()。
A)A是一个指向有5个字符型元素的指针变量B)A是一个有5个元素的一维数组,每个元素指向字符型的指针变量C)A是一个指向字符型的函数的指针变量D)A是一个有5个元素的一维数组,每个元素指向整型变量的指针变量41、下述程序的运行结果为()。
#include<>void abc(char*str){int a, b;for(a=b=0;str{a}!=’\0’;a++)if(str[a]!=’c’)tr[b++]=str[a];str[b]=’\0’;}void main (){char str []=”abcdef”;abc(str);printf(“str[]=”%s”,str);}A)STR[]=abdef B)STR[]=abcdef C)STR[]=aD)STR[]=ab42、下列各数组定义程序段,正确的是()。
A)int n=10;int a[n];B)main(){char str[10]=”a man”}C)static int[][3]={{0,1,2},{80,89,2}};D)static char[5]=“i am a student.”;43、以下main函数调用invert函数将串s的元素按逆序重新存放,()是不能正确实现此功能的程序。
void main(){char srt[]=“String”;invert(s);···}A)void invert(char s[]){int t,I,j;for(i=0,j=strlen(s)-1;i<j;i++,--j){t=*(s+i);*(s+i)=*(s+j);*(s+j)=t;}}B)void invert(char *s){int t,i,j;for(i=0,j=strlen(s);i<j;i++,--j) {t=s[i];s[j]=s[i];s[i]=t;}}C)void invert(char *s){int t,*h,*p;h=s;p=s+strlen(s)-1;while(h<p)t=*h,h=*p,*p=t,p--,h++;}D)void invert(char *s){int t, *p;p=s+stlen(s)-1;while(s<p){t=*s;*s++=*p;*p--=t;}}44、下列程序的输出结果是()。