C语言期末温习题库.docx

上传人:b****4 文档编号:12141477 上传时间:2023-04-17 格式:DOCX 页数:66 大小:44.83KB
下载 相关 举报
C语言期末温习题库.docx_第1页
第1页 / 共66页
C语言期末温习题库.docx_第2页
第2页 / 共66页
C语言期末温习题库.docx_第3页
第3页 / 共66页
C语言期末温习题库.docx_第4页
第4页 / 共66页
C语言期末温习题库.docx_第5页
第5页 / 共66页
点击查看更多>>
下载资源
资源描述

C语言期末温习题库.docx

《C语言期末温习题库.docx》由会员分享,可在线阅读,更多相关《C语言期末温习题库.docx(66页珍藏版)》请在冰豆网上搜索。

C语言期末温习题库.docx

C语言期末温习题库

第1章程序设计及C语言概述

一、单项选择题

1)一个算法应该具有“确信性”等5个特性,下面对另外4个特性的描述中错误的选项是()。

A)有零个或多个输入B)有零个或多个输出

C)有穷性D)可行性

2)以下表达中正确的选项是()。

A)C语言的源程序没必要通过编译就能够够直接运行

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

C)C语言源程序经编译形成的二进制代码能够直接运行

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

3)用C语言编写的代码程序()。

  A)可当即执行B)是一个源程序

 C)通过编译即可执行D)通过编译说明才能执行

4)结构化程序由三种大体结构组成,三种大体结构组成的算法()。

A)能够完成任何复杂的任务

B)只能完成部份复杂的任务

C)只能完成符合结构化的任务

D)只能完成一些简单的任务

5)以下表达中正确的选项是()。

A)用C程序实现的算法必需要有输入和输出操作

B)用C程序实现的算法能够没有输出但必需要有输入

C)用C程序实现的算法能够没有输入但必需要有输出

D)用C程序实现的算法能够既没有输入也没有输出

第2章C语言基础

一、单项选择题

1)假设在程序中a,b,c均被概念成整型,而且已赋大于1的值,那么以下能正确表示代数式

的表达式是()。

A)1/a*b*cB)1/(a*b*c)

C)1/a/b/(float)cD)a/b/c

2)以下能正肯概念且赋初值的语句是()

A)intn1=n2=10;B)charc=32;

C)floatf=f+;D)doublex=)以下不能概念为用户标识符的是()

A)scanfB)VoidC)_3com_D)int

4)设x、y、z和k都是int型变量,那么执行表达式:

x=(y=4,z=16,k=32+z)后,x的值为()

A)4B)16C)48D)32

5)设有intx=11,那么表达式(x++*1/3)的值是()。

A)3B)4C)11D)12

6)以下变量x、y、z均为double类型且已正确赋值,不能正确表示数学式子

的C语言表达式是()。

A)x/y*zB)x*(1/(y*z))C)x/y*1/zD)x/y/z

7)有以下程序

main()

{chara1='M',a2='m';

printf("%c\n",(a1,a2));}

以下表达中正确的选项是()

A)程序输出大写字母M

B)程序输出小写字母m

C)格式说明符不足,编译犯错

D)程序运行时产生犯错信息

8)以下程序运行后的输出结果是()

main()

{charp[]={'a','b','c'},q[]="abc";

printf("%d%d\n",sizeof(p),sizeof(q));

}

A)44B)33C)34D)43

9)以下表达中错误的选项是()

A)用户所概念的标识符许诺利用关键字

B)用户所概念的标识符应尽可能做到“见名知意”

C)用户所概念的标识符必需以字母或下划线开头

D)用户概念的标识符中,大、小写字母代表不同标识

10)在C语言中,以下属于构造类型的是()

A)整型B)字符型C)实型D)数组类型

11)以下字符串属于标识符的是()

A)INTB)5_studentC)2ongD)!

DF

12)C语言中能用来表示整常数的进制是()

A)十进制、八进制、十六进制

B)十二进制、十进制

C)六进制、八进制

D)二进制、十进制

13)在C语言中,回车换行符是()

A)\nB)\tC)\vD)\b

14)在ASCII码表中能够看到每一个小写字母的ASCII码比它相应的大写字母的ASCII码()

A)大32B)大64C)小32D)小64

15)设d为字符变量,以下表达式不正确的选项是()。

A)d=97B)d='a'C)d="a"D)d='g'

16)设d为字符变量,以下表达式正确的选项是()。

A)d=678B)d='a'C)d="d"D)d='gjkl'

17)已知在ASCII字符集中,数字0的序号为48,下面程序的输出结果为()。

main()

{charx,y;

x='0';y='9';

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

}

A)因输出格式不合法,输犯错误信息B)48,57

C)0,9D)48,58

18)已知在ASCII字符集中,字母A的序号为65,下面程序的输出结果为()。

main()

{charc='A';inti=10;

c=c+10;

i=c%i;

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

}

A)75,7B)75,5C)K,5

D)因存在非图形字符,无法直接显示出来

19)已知在ASCII集中,字母A的序号为65,下面程序的输出结果为()。

main()

{charc1='B',c2='Y';

printf("%d,%d\n",++c1,--c2);

}

A)输出格式不合法,输犯错误信息B)67,88

C)66,89D)C,X

20)C语言中,运算对象必需是整型数的运算符是()。

A)%B)\C)%和\D)**

21)以下常数中,合法的C常量是()。

A)-0.B)'105'C)'AB'D)"35"

22)以下常数中,合法的C常量是()。

A)"x-y"B)'105'C)'Be'D)7ff

23)以下常数中,合法的C常量是()。

A)'\n'B)e-310C)'DEF'D)'1234'

24)以下常数中,不合法的C常量是()。

A)-0x2aB)lg3C)'['D)"CHINA"

25)以下常数中,不合法的C常量是()。

A)-0x3bB)123e+C)'}'D)6e+7

26)以下符号中,能够作为变量名的是()。

A)+aB)12345eC)a3BD)5e+0

27)以下符号中,能够作为变量名的是()。

A)+cB)*XC)_DAYD)nextday

28)假设已概念x和y为double类型,那么表达式:

x=1,y=x+3/2的值为()。

A)1B)2C)D)

29)以下程序的执行结果是()。

#include<>

#definesum10+20

main()

{intb=0,c=0;

b=5;

c=sum*b;

printf("%d",c);

}

A)100B)110C)70D)150

30)以下程序的执行结果是()。

#include<>

#definesum(10+20)

mian()

{inta=0,b=0,c=0;

a=sum;

b=5;

c=sum*b;

printf("%d",c);

}

A)100B)110C)70D)150

31)表达式(int)的值为()。

A)2B)C)0D)3

32)表达式(double)(20/3)的值为()。

A)6B)C)2D)3

33)假设所有变量均为整型,那么表达式(a=5,b=2,a++,a+b)的值是()。

A)8B)7C)6D)5

34)C语言规定标识符由()等字符组成.

A)字母 数字 下划线B)中划线 字母 数字

C)字母 数字 逗号 D)字母下划线中划线

35)已知ch是字符型变量,下面不正确的赋值语句是()。

A)ch='\0'B)ch='a+b'C)ch='7'+'9'D)ch=7+9

36)假设x和y都为float型变量,且x=,y=执行以下语句后输出结果为()。

printf("%f",(x,y));

A)B)

C),D)输出符号不够,输出不正确值

37)设整型变量a值为9,那么以下表达式中使b的值不为4的表达式()。

A)b=a/2B)b=a%2C)b=8-(3,a-5)D)b=a>5?

4:

2

二、填空题

1)写出以下程序段的执行结果

inta,b,c;

a=b=c=5;

a=++b+(c--);

变量a,b,c的值为【1】

2)假设有如下程序段:

inta=10,b=9,c=8;

c=(a-=(b-5));

c=(a%11)+(b=5);

顺序执行上述语句后,变量b的值为【2】

3)设有以下变量概念,并已赋确信的值

charw;intx;floaty;doublez;

那么表达式:

w*x+z-y所求得的数据类型为【3】。

4)C语言大体数据类型包括【4】、【5】、【6】、【7】。

5)C语言在概念变量的同时说明变量的【8】,系统在编译时就能够依照变量概念及其【9】为它分派相应数量的存储空间。

6)在C语言中,标识符只能由【10】、【11】和【12】三种字符组成,且第一个字符必需【13】或【14】。

7)实型变量分为【15】和【16】,即float和double型。

8)C语言中规定,在变量概念的同时也能够给变量赋初值,叫做【17】。

9)C的字符串常量是用【18】括起来的字符序列。

10)在C语言中,系统在每一个字符串的结尾自动加一个“字符串终止标志符”即【19】,以便系统据此数据判定字符串是不是终止。

11)下面的程序

mian()

{floatx;inti;

x=;i=(int)x;

printf("x=%f,i=%d",x,i);

}

运行结果为【20】。

第3章顺序结构

一、单项选择题

1)设x为int型变量,那么执行以下语句后,x的值为()。

x=10;x+=x-=x-x;

A)10B)20C)40D)30

2)以下可作为C语言赋值语句的是()。

A)x=3,y=5B)a=b=6

C)i--;D)y=int(x);

3)设x,y,z,t均为int型变量,那么执行以下语句后,t的值为()。

x=y=z=1;

t=++x||++y&&++z;

A)不定值B)2C)1D)0

4)假设以下选项中的变量已正肯概念,那么正确的赋值语句是()。

A)x1=%3B)1+2=x2

C)x3=0x12;D)x4=1+2=3;

5)设有以下概念

inta=0;

doubleb=;

charc='A';

#defined2

那么下面语句中错误的选项是()。

A)a++;B)b++;C)c++;D)d++;

6)有以下程序

main()

{intx=102,y=012;

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

}

执行后输出的结果是()。

A)10,01B)02,12C)102,10D)02,10

7)有以下程序

  main()

  {intm=3,n=4,x;

x=-m++;

x=x+8/++n;

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

}

程序运行后的输出结果是()。

A)3B)5C)-1D)-2

8)有以下程序

  main()

  {chara='a',b;

  printf("%c,",++a);

 printf("%c\n",b=a++);

 }

程序运行后的输出结果是()。

A)b,bB)b,cC)a,bD)a,c

9)有以下程序

  main()

{intm=0256,n=256;

 printf("%o%o\n",m,n);

  }

程序运行后的输出结果是()。

A)02560400B)0256256C)256400D)400400

10)有以下程序

  main()

 {chara,b,c,d;

  scanf("%c,%c,%d,%d",&a,&b,&c,&d);

printf("%c,%c,%c,%c\n",a,b,c,d);

}

假设运行时从键盘上输入:

6,5,65,66。

那么输出结果是()。

A)6,5,A,BB)6,5,65,66C)6,5,6,5D)6,5,6,6

11)数字字符0的ASCII值为48,假设有以下程序

main()

{chara='1',b='2';

printf("%c,",b++);

printf("%d\n",b-a);

}

程序运行后的输出结果是()。

A)3,2B)50,2C)2,2D)2,50

12)有以下程序

main()

{intm=12,n=34;

printf("%d%d",m++,++n);

printf("%d%d\n",n++,++m);

}

程序运行后的输出结果是()。

A)B)

C)D)

13)有以下程序

main()

{intm,n,p;

scanf("m=%dn=%dp=%d",&m,&n,&p);

……

}

假假想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,那么正确的输入是()。

A)m=123n=456p=789B)m=123n=456p=789

C)m=123,n=456,p=789D)123456789

14)有以下程序

main()

{inta,b,d=25;

a=d/10%9;

b=a-1;

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

}

程序运行后的输出结果是()。

A)6,1B)2,1C)6,0D)2,0

15)以下表达中错误的选项是()。

A)C语句必需以分号终止

B)复合语句在语法上被看做一条语句

C)空语句出此刻任何位置都可不能阻碍程序运行

D)赋值表达式末尾加分号就组成赋值语句

16)以下表达中正确的选项是()。

A)挪用printf函数时,必需要有输出项

B)利用putchar函数时,必需在之前包括头文件

C)在C语言中,整数能够以十二进制、八进制或十六进制的形式输出

D)挪用getchar函数读入字符时,能够从键盘上输入字符所对应的ASCII码

17)有以下程序

#include<>

main()

{ char c1='1',c2='2';

c1=getchar(); c2=getchar(); 

putchar(c1); putchar(c2);

}

当运行时输入:

a<回车> 后,以下表达正确的选项是()。

A)变量c1被给予字符a,c2被给予回车符

B)程序将等待用户输入第2个字符

C)变量c1被给予字符a,c2中仍是原有字符2 

D)变量c1被给予字符a,c2中将无确信值

二、填空题

1)已知字符A的ASCII码值为65,以下语句的输出结果是【1】。

charch='B';

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

2)有以下语句段:

intn1=10,n2=20;

printf("【2】",n1,n2);

要求按以下格式输出n1和n2的值,每一个输出行从第一列开始,请填空。

n1=10

n2=20

3)有以下程序:

#include""

main()

{charch1,ch2;intn1,n2;

ch1=getchar();ch2=getchar();

n1=ch1-'0';n2=n1*10+(ch2-'0');

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

}

程序运行时输入:

12<回车>,执行后的输出结果是【3】。

4)以下程序段的输出结果是【4】。

  inti=9;

  printf("%o\n",i);

5)以下程序运行后的输出结果是【5】。

  main()

  {inta,b,c;

 a=25;

 b=025;

 c=0x25;

printf("%d%d%d\n',a,b,c);

}

6)以下程序运行时,假设从键盘输入:

102030<回车>,输出的结果是【6】。

#include""

main()

{inti=0,j=0,k=0;

scanf("%d%*d%d",&i,&k);

printf("%d%d%d\n",i,j,k);

}

7)已知字符A的ASCII代码值为65,以下程序运行时假设从键盘输入:

B33<回车>,那么输出结果是【7】。

#include""

main()

{chara,b;

a=getchar();scanf("%d",&b);

a=a-'A'+'0';b=b*2;

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

}

8)以下程序运行后的输出结果是【8】。

 main()

 {int x=0210; printf("%x\n",x);}

9)以下程序运行后的输出结果是【9】。

 main()

 {char c; int n=100;

 float f=10; double x;

 x=f*=n/=(c=50);

 printf("%d %f\n",n,x);

 }

10)已知字母A的ASCII码为65。

以下程序运行后的输出结果是【10】 。

 main()

 {char a, b;

 a='A'+'5'-'3'; b=a+'6'-'2' ;

 printf("%d %c\n", a, b);

 }

第4章选择结构

一、单项选择题

1)假设变量c为char类型,能正确判定出c为小写字母的表达式是()

  A)'a'<=c<='z'    B)(c>='a')||(c<='z')

  C)('a'<=c)and('z'>=c) D)(c>='a')&&(c<='z')

2)设有概念:

inta=2,b=3,c=4;,那么以下选项中值为0的表达式是()

A)(!

a==1)&&(!

b==0)B)(a

c||1

C)a&&bD)a||(b+b)&&(c-a)

3)能正确表示逻辑关系“a≥=10或a≤0”的C语言表达式是()。

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

C)a>=10&&a<=0D)a>=10‖a<=0

4)以下运算符中优先级最高的是()。

A)>B)+C)&&D)!

=

5)以下关于运算符优先级的描述中,正确的选项是()。

A)!

(逻辑非)>算术运算>关系运算>&&(逻辑与)>||(逻辑或)>赋值运算

B)&&(逻辑与)>算术运算>关系运算>赋值运算

C)关系运算>算术运算>&&(逻辑与)>||(逻辑或)>赋值运算

D)赋值运算>算术运算>关系运算>&&(逻辑与)>||(逻辑或)

6)逻辑运算符的运算对象的数据类型()。

A)只能是0或1B)只能是.T.或.F.

C)只能是整型或字符型D)任何类型的数据

7)以下程序的运行结果是()。

main()

{intc,x,y;

x=1;y=1;c=0;

c=x++||y++;

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

}

A)110B)211C)011D)001

8)以下程序的运行结果是()。

main()

{intc,x,y;

x=0;y=0;c=0;

c=x++&&y++;

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

}

A)100B)211C)011D)001

9)判定字符型变量ch为大写字母的表达式是()。

A)'A'<=ch<='Z'B)(ch>='A')&(ch<='Z')

C)(ch>='A')&&(ch<='Z')D)(ch>='A')AND(ch<='Z')

10)判定字符型变量ch为小写字母的表达式是()。

A)'a'<=ch<='z'B)(ch>=a)&&(ch<=z)

C)(ch>='a')||(ch<='z')D)(ch>='a')&&(ch<='z')

11)以下if语句书写正确的选项是()。

A)if(x=0;)B)if(x>0)

printf("%f",x);{x=x+1;printf("%f",x);}

elseprintf("%f",-x);elseprintf("%f",-x);

C)if(x>0);D)if(x>0)

{x=x+1;printf("%f",x);}{x=x+1;printf("%f",x)}

elseprintf("%f",-x);elseprintf("%f",-x);

12)分析以下程序:

main()

{intx=5,a=0,b=0;

if(x=a+b)printf("****\n");

elseprintf("####\n");

}

以上程序()。

A)有语法错,不能通过编译

B)通过编译,但不能连接

C)输出****D)输出####

13)写出下面程序的执行结果()。

main()

{intx,y=1;

if(y!

=0)x=5;

printf("%d\t",x);

if(y==0)x=3;

elsex=5;

printf("%d\t\n",x);

}

A)13B)15C)53D)55

14)假设有以下变量概念:

floatx;inta,b;

那么正确的switch语句是()。

A)switch(x)

{case:

printf("*\n");

case:

printf("**\n");

}

B)switch(x)

{case1,2:

printf("*\n");

case3:

printf("**\n");

}

C)switch(a+b)

{case1:

printf("*\n");

case2*a:

printf("**\n");

}

D)switch(a+b)

{case1:

printf("*\n");

case1+2:

printf("**\n");

}

15)以下关于运算符优先顺序的描述正确的选项是()。

A)关系运算符<算术运算符<赋值运算符<逻辑运算符

B)逻辑运算符<关系运算符<算术运算符<赋值运算符

C)赋值运算符<逻辑运算符<关系运算符<算术运算符

D)算术运算符<关系运算符<赋值运算符<逻辑运算符

16)能正确表示a>=10或a<=0的关系

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

当前位置:首页 > 工程科技 > 能源化工

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

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