C语言选择题库答案.docx

上传人:b****5 文档编号:5708133 上传时间:2022-12-31 格式:DOCX 页数:13 大小:26.59KB
下载 相关 举报
C语言选择题库答案.docx_第1页
第1页 / 共13页
C语言选择题库答案.docx_第2页
第2页 / 共13页
C语言选择题库答案.docx_第3页
第3页 / 共13页
C语言选择题库答案.docx_第4页
第4页 / 共13页
C语言选择题库答案.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

C语言选择题库答案.docx

《C语言选择题库答案.docx》由会员分享,可在线阅读,更多相关《C语言选择题库答案.docx(13页珍藏版)》请在冰豆网上搜索。

C语言选择题库答案.docx

C语言选择题库答案

C语言选择题答案

1、在计算机内部,一切信息存取处理和传送的形式是:

C

A)ASCⅡ码B)BCD码

C)二进制D)十六进制

2、计算机的软件系统一般分为:

C

A)系统软件、应用软件与各种字处理软件

B)操作系统、用户软件与管理软件

C)系统软件与应用软件

D)操作系统、实时系统与分时系统

3、在C语言中,要求运算数必须是整型的运算符是:

A

A)%B)/

C)

4、下列语句中符合C语言语法的赋值语句是:

D

A)a=7+b+c=a+7;B)a=7+b++=a+7;

C)a=7+b,b++,a+7D)a=7+b;c=a+7;

5、如果按字长来划分,微机可以分为8位机`16位机`32位机和64位机.所谓32位机是指该计算机所用的CPU:

A

A)同时能处理32位二进制数

B)具有32位的寄存器

C)只能自理32位二进制定点数

D)有32个寄存器

6、以下不正确的C语言标识符是____。

A(不能使用关键字)

A)intB)a_1_2C)ab1exeD)_x

7、、以下叙述正确的是______。

C

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

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

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

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

8、下列运算中,操作数只能是整型的________D

A)+B)*C)/D)%

9、下列转义字符中错误的一个是____。

C(\x后面应该是1到2位十六进制数)

A)'\000'B)'\0014'C)'\x111'D)'\2'

10、以下叙述中正确的是_____C

A)C语言的源程序不必通过编译就可以直接运行

B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令

C)C源程序经编译形成的二进制代码可以直接运行

D)C语言中的函数不可以单独进行编译

11、以下是正确的C语言标识符是____。

B

A)#define(系统关键字)B)_123C)%d(%错)D)\n(\错)

12、下列关于C语言的叙述错误的是____A

A)大写字母和小写字母的意义相同

B)不同类型的变量可以在一个表达式中

C)在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型

D)同一个运算符号在不同的场合可以有不同的含义

13、C语言中字符型(char)数据在内存中的存储形式是____。

D

A)原码B)补码C)反码D)ASCII码

14、将字符g赋给字符变量c,正确的表达式是。

C(使用8位二进制码,最左边1位为0)

A)c=\147B)c="\147"C)c='\147'D)c='0147'

可以用以下程序来检验:

#include

voidmain()

{

charc='\147';

printf("%c\n",c);

}

15、以下程序的输出为____A____

#include

voidmain()

{

intm=7,n=4;

floata=38.4,b=6.4,x;

x=m/2+n*a/b+1/2;

printf(“%f\n”,x);

}

A)27.000000B)27.500000C)28.000000D)28.500000

 

16、已知字母A的ASCⅡ码为十进制的65,下面程序的输出是:

A

A)67,DB)B,C

C)C,DD)不确定的值

main()

{

charch1,ch2;

ch1='A'+'5'-'3';

ch2='A'+'6'-'3';

printf("%d,%c\n",ch1,ch2);

}

17、下面程序的输出是:

C

A)0B)1

C)3D)不确定的值

main()

{

intx=10,y=3;

printf("%d\n",y=x/y);

}

18、在以下一组运算符中,优先级最高的运算符是:

C

A)<=B)=

C)%D)&&

19、能正确表示a≥10或a≤0的关系表达式是:

D

A)a>=10ora<=0B)a>=10│a<=0

C)a≥10││a≤0D)a>=10││a<=0

20、一个C程序的执行是从:

A

 A)本程序的main函数开始,到main函数结束

 B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束

 C)本程序的main函数开始,到本程序文件的最后一个函数结束

 D)本程序文件的第一个函数开始,到本程序main函数结束

21、下列不属于C语言关键字的是。

D

A)default(如default用于switch语句当中:

default:

break;)

B)register(寄存器类型)C)enum(枚举类型)D)external(应为extern)

22、逗号表达式"(a=3*5,a*4),a+15"的值是____。

C

A)15B)60C)30D)不确定

23、已知intx=5,y=5,z=5;执行语句x%=y+z;后,x的值是____。

C

A)0B)1C)5D)6

24、使用语句scanf("x=%f,y=%f",&x,&y);输入变量x、y的值(□代表空格),正确的输入是____。

C

A)1.25,2.4B)1.25□2.4C)x=1.25,y=2.4D)x=1.25□y=2.4

25、C语言程序从main()函数开始执行,所以这个函数要写在____。

D

A)程序文件的开始B)程序文件的最后

C)它所调用的函数的前面D)程序文件的任何位置

26、下面各选项组中,均是C语言关键字的组是。

B

说明:

所谓关键字就是已被TurboC2.0本身使用,不能作其它用途使用的字。

例如关键字不能用作变量名、函数名等

C语言总共有32个关键字:

TurboC2.0有以下关键字:

TurboC2.0扩展的共11个

asm_cs_ds_es_sscdeclfarnearhugeinterruptpascal

由ANSI标准定义的共32个:

autodoubleintstructbreakelselongswitchcaseenumregistertypedefcharexternreturnunionconstfloatshortunsignedcontinueforsignedvoiddefaultgotosizeofvolatiledoifwhilestatic

注:

auto是系统在没有为变量显示声明存储类型时自动视为auto;register寄存器变量;extern外部变量;static静态变量;volatile(易变的)表示该变量不经过赋值,其值也可能被改变(例如表示时钟的变量、表示通信端口的变量等)。

A)auto,printf,includeB)switch,typedef,continue

C)signed,union,scanfD)if,struct,type

27、为判断字符变量c的值是字母时,应采用下述表达式____。

D

【解析】由于单目运算符优先级高于“&&”和“||”运算,所以先计算!

a、!

b和!

c分别为“假”、“假”、“真”,然后是&&运算和“||”运算,原表达式就等价于“假”&&“假”||“真”,又由于“&&”的优先级高于“||”运算符,所以先计算“假”&&“假”,还是为假,最后是“假”||“真”为真。

A)c<=65||c>=90&&c<=97||c>=122(不是字母的取值范围)

B)c>=57&&c<=65||c<=97&&c>=122(不是字母的取值范围)

C)c>=65&&c<=90,c>=97&&c<=122(,号错误,表达式错)

D)c>=65&&c<=90||c>=97&&c<=122

28、以下程序执行后sum的值是C(应为sum未赋初值)

A)15B)14C)不确定D)0

main()

{inti,sum;

for(i=1;i<6;i++)sum=sum+i;

printf("%d\n",sum);

}

29、温度华氏和摄氏的关系是:

C=

已知:

floatC,F;由华氏求摄氏的正确的赋值表达式是____。

B(运算符的次序问题,且*不能省)

A)C=5/9(F-32)B)C=5*(F-32)/9

C)C=5/9*(F-32)D)三个表达式都正确

选择题:

30、当类型长度为2字节且为无符号时,则它的值范围为:

D

A)0至255B)-32768至32767

C)-256至255D)0至65535

31、在C语言的循环语句中for,while,do-while中,有一个_____语句用于直接中断最内层循环。

C

A)switchB)continue

C)breakD)if

32、C语言规定:

在一个源程序中,main函数的位置:

C

A)必须在最开始

B)必须在系统调用的库函数的后面

C)可以任意

D)必须在最后

33、C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符:

C

 A)必须为字母           B)必须为下划线

 C)必须为字母或下划线  D)可以是字母,数字和下划线中任一种字符

34、已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'十'6'一'3';后,c2中的值为:

A

A)D    B)68  C)不确定的值    D)C

35、以下叙述中不正确的是______D

A)在不同的函数中可以使用相同名字的变量

B)函数中的形式参数是局部变量

C)在一个函数内定义的变量只在本函数范围内有效

D)在一个函数内的复合语句中定义的变量在本函数范围内有效(返回值就不是)

36、已知:

chara;intb;floatc;doubled;执行语句"c=a+b+c+d;"后,变量c的数据类型是。

C(有争议,还取决于输出格式)

A)intB)charC)floatD)double

37、已知intx=1,y;执行下述语句后变量x的值是____。

B

y=++x>5&&++x<10;(因为机器计算了++x>5后就能判断y的值为0了,所以运行结束,x只自加了一次)

A)1B)2C)3D)4

38、语句printf(“%d”,(a=2)&&(b=-2);的输出结果是_______D((a=2)和(b=-2)均不为0,所以结果为1)

A)无输出B)结果不确定C)0D)1

39、若执行以下程序时从键盘上输入9,则输出结果是_____B

A)11B)10C)9D)8

main()

{intn;

scanf("%d",&n);

if(n++<10)printf("%d\n",n);/*(n=9,假设成立n++后输出n值)*/

elseprintf("%d\n",n--);

}

40、一个C语言程序是由______。

A

A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成

41、以下叙述正确的是______B【解析】if是C语言中的保留字,而define不是保留字。

用户标识符不允许使用保留字。

A)可以把define和if定义为用户标识符(if是关键字)

B)可以把define定义为用户标识符,但不能把if定义为用户标识符

C)可以把if定义为用户标识符,但不能把define定义为用户标识符

D)define和if都不能定义为用户标识符

42、函数sqrt(x)的功能是______D

A)求x的长度B)求x的绝对值

C)求x的平方值D)求x的平方根

43、若有以下定义D(数据类型向上兼容)

chara;intb;

floatc;doubled;

则表达式a*b+d-c值的类型为_______

A)floatB)intC)charD)double

44、下列说法中,正确的是_______C

A)break语句可以用在循环语句中,作用是结束本次循环

B)break语句不能用在switch语句中

C)continue语句用在循环语句中,作用是结束本次循环

D)break语句和continue语句用在循环语句中,都可以直接终止整个循环

选择题:

45、以下描述中正确的是:

C

    A)由于do一while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句

    B) do一while循环由do开始,用while结束,在while(表达式)后面不能写分号

    C)在do一while循环体中,一定要有能使while后表达式值变为零("假")的操作

    D)do一while循环中,根据情况可以省略while

46、在c语言中,引用数组元素时,其数组下标的数据类型允许是:

C

     A)整型常量        B)整型表达式

     C)整型常量或整型表达式D)任何类型的表达式

47、以下能对一维数组a进行正确初始化的语句是:

C

A) inta[10]=(0,0,0,0,0)B)int a[10]={}

C) int a[]={0};D)inta[10]={10*1};

48、以下对二维数组a的正确说明是:

C

     A) inta[3][];  B) floatfa(3,4);

      C) doublea[1][4]; D) floata(3)(4);

49、在C语言中,一维数组的定义方式为:

类型说说明符数组名:

A

A)[常量表达式]  B)[整形表达式]    

c)[整型常量]或[整型表达式]D)[整型常量]

50、对字符数组s赋值,不合法的一个是____。

C

A)chars[]="Beijing";

B)chars[20]={"beijing"};

C)chars[20];s="Beijing";

D)chars[20]={'B','e','i','j','i','n','g'};

51、对字符数组str赋初值,str不能作为字符串使用的一个是____。

D

A)charstr[]="shanghai";

B)charstr[]={"shanghai"};

C)charstr[9]={'s','h','a','n','g','h','a','i'};

D)charstr[8]={'s','h','a','n','g','h','a','i'};(因为\0还占用一个字节,所以8应改为9或数组中少一个字符)

52、字符串""的长度是____。

B(因为\0还占用一个字节)

A)0B)1C)2D)非法字符串

53、有二维数组定义inta[4][5];下列对该数组的元素引用正确的是________A

A)a[0][0]

B)a[0,3]

C)a[4][1](一维超限)

D)a[1][5](二维超限)

54、对字符数组s赋值,不合法的一个是____C。

A)chars[]="Beijing";

B)chars[20]={"beijing"};

C)chars[20];s="Beijing";

D)chars[20]={'B','e','i','j','i','n','g'};

55、对字符数组str赋初值,str不能作为字符串使用的一个是____D(少一个字节空间存放\n)。

A)charstr[]="shanghai";

B)charstr[]={"shanghai"};

C)charstr[9]={'s','h','a','n','g','h','a','i'};

D)charstr[8]={'s','h','a','n','g','h','a','i'};

56、字符串"ab"的长度是____C。

A)0B)1C)2D)非法字符串

57、对二维数组的正确说明是____C。

(A、B第二维均未标注值,D的书写格式不对)

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};

选择题:

58、函数调用:

strcat(strcpy(str1,str2),str3)的功能是:

C

A)将串str1复制到串str2中后再连接到串str3之后

B)将串str1连接到串str2之后再复制到串str3之后

C)将串str2复制到串str1中后再将串str3连接到串str1之后

D)将串str2连接到串str1之后再将串str1复制到串str3中

59、以下对C语言函数的有关描述中,正确的是:

A

A)在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参

B)C函数既可以嵌套定义又可以递归调用

C)函数必须有返回值,否则不能使用函数

D)C程序中有调用关系的所有函数必须放在同一个源程序文件中

60、以下叙述中错误的是:

B

A)在C语言中,函数中的自动变量可以赋初值,每调用一次赋一次初值

B)在C语言中,外部变量的隐含类别是自动存储类别

C)在C语言中,函数形参的存储类型是自动(auto)类型的变量

D)在C语言中,在调用函数时,实参和对应形参在类型上只需赋值兼容

61、在C程序中,若对函数类型未加说明,则函数的隐含类型为__A___。

A)int       B)double    C)void    D)char 

62、简单变量做实参时,它相对应形参之间的数据传递方式是__B__。

A)地址传递 

B)单向值传递

C)由实参传给形参,再由形参传回给实参

D)由用户指定传递方式

63、一个C程序的执行是从______。

A

A)本程序的main函数开始,到main函数的结束

B)本程序文件的第一个函数开始,到本程序文件的最后一个函数的结束

C)本程序文件的main开始,到本程序文件的最后一个函数的结束

D)本程序文件的第一个函数开始,到本程序文件的main函数的结束

64、下面函数的功能是____。

A

a(s1,s2)

chars1[],s2[];

{while(s2++==s1++);

}

A)字符串比较B)字符串复制C)字符串连接D)字符串反向

65、以下所列的各函数首部中,正确的是C

A)voidplay(var:

Integer,varb:

Integer)

B)voidplay(inta,b)

C)voidplay(inta,intb)

D)Subplay(aasinteger,basinteger)

66、对函数形参的说明有错误的是____。

C(形参中数组不应规定元素个数,它是由系统动态分配空间的)

A)inta(floatx[],intn)B)inta(float*x,intn)

C)inta(floatx[10],intn)D)inta(floatx,intn)

67、已知intx=12,y=3;执行下述程序后,变量x的值是____。

D(循环到y=0时,除法有错误,不能进行下去)

do

{x/=y--;

}while(x>y);

A)1B)2C)3D)程序运行有错误

68、在C语言中,函数的数据类型是指____A。

A)函数返回值的数据类型B)函数形参的数据类型

C)调用该函数时的实参的数据类型D)任意指定的数据类型

69、如果一个变量在整个程序运行期间都存在,但是仅在说明它的函数内是可见的,这个变量的存储类型应该被说明为____A。

A)静态变量B)动态变量C)外部变量D)内部变量

70、若用数组名作为函数调用时的实参,则实际上传递给形参的是。

A

A)数组首地址B)数组的第一个元素值

C)数组中全部元素的值D)数组元素的个数

71、已知如下定义的函数:

fun1(inta)

{printf("\n%d",a);

}

则该函数的数据类型是__B__。

A)与参数a的类型相同B)void型

C)没有返回值D)无法确定

72、以下程序的输出结果是C(自己运行一下)

A)0B)29C)31D)无定值

fun(intx,inty,intz)

{z=x*x+y*y;}

main()

{inta=31;

fun(5,2,a);

printf("%d",a);

}

选择题:

73、C语言中有如下定义:

B

charstr[4]=”ABC”;

char*ptr;

执行了语句ptr=str后,*(ptr+3)的值是:

A)不确定B)’\0’

C)’C’D)字符的地址

74、下列各语句行中,能正确进行赋字符串操作的是:

C

A)charst[4][5]={“ABCDE”};

B)chars[5]={‘A’,’B’,’C’,’D’,’E’};

C)char*s;s=”ABCED”;

D)char*s;scanf(“%s”,s);

75、对于类型相同的指针变量,不能进行哪种运算?

A

A)+B)-C)=D)==

76、若有以下说明和语句,且0<=i<10,则下面哪个是对数组元素地址的正确表示?

(D)

inta[]={1,2,3,4,5,6,7,8,9,0},*p,i;

p=a;

A)&(a+1)B)a++

C)&pD)&p[i]

77、已知有以下的说明,那么执行语句a=p+2;后,a[0]的值等于多少?

(D)

floata[3]={1.2,45.6,-23.0};

float*p=a;

A)1.2B)45.6

C)-23.0D)语句有错

78、下列程序的输出结果是———C

A)非法B)a[4]的地址C)5D)3

main()

{chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;

printf("%d",*--p);

}

79、已知:

chars[100];inti;则引用数组元素的错误的形式是。

——A(数组名[]中应为常量表达式,不能为变量)

A)s[i+10]B)*(s+i)C)*(i+s)D)*((s++)+i)

80、已知:

chars[10],*p=s,则在下列语句中,错

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1