2011C语言复习题给学生(本科80学时)

2019-08-30 22:50

C语言复习题

第一章知识点

1 下列变量名中是否合法

A B.C.Tom B 3a6b C _6a7b D $ABC 以下是否为正确的C语言标识符

A #define B _123 C %d D \\n 2 C语言的基本单位是 函数 3 C语言程序总是从main()【或主函数】开始执行,C源程序经编译和连接后才可直接运行产生结果;且C语言程序有且仅有一个main函数;

4 C源程序文件的扩展名为 .c ,经过编译后生成文件的后缀是 .OBJ,经过链接后生成文件

的后缀是 .EXE。

5 C语言源程序的语句分隔符是 ; 。

6 C语言程序开发的四个步骤是编辑、编译、连接、运行。

7 在一个C源程序中,注释部分以 /* 开始,并且以 */ 结束。 8 在C程序中,main()函数的位置是可以任意位置摆放

9. 在对一个C程序进行编译的作用之一是,可发现注释中的拼写错误; 10.数制转换,如: (101)10=( )2 , (0.1)8=( )16

第二章知识点

1 以下哪些是正确的整型常量

A 12 B - 20 C 1,000 D 4 5 6

2 整型变量x=1,y=3,经下列计算后,x的值不等于6的是哪个?

A x=(x=1+2,x*2) B x = y>2 ? 6 : 5 C x=8-(--y)-(--y) D x=y*4.8/2

3 在C语言中,错误的int类型的常数是哪个 ?

A 32768 B 0 C 037 D 0Xaf

4 逗号表达式\的值是多少?

A 15 B 60 C 30 D 不确定

5 字符型常量在内存中存放的是【ASCⅡ 代码】

6 若有 float x ; 则 sizeof(x) 和 sizeof(float) 两种描述【都正确】

7 有整型变量x,单精度变量y = 5.5,表达式:x=(float)( y*3+((int)y)%4 ) 执行后,x的值为

【17】

8 在C语言中运算对象必须是整型的运算符是 【%】

9 若x、a、b和。均是int型变量,则执行表达式x=(a=1,b=2)后的结果为2 10 下列关于C语言的叙述错误的是【大写字母和小写字母的意义相同】 11 C语句x*=y+2;还可以写成【x=x*(y+2);】

12 若有以下定义:int m=5,y=2;则计算表达式y+=y-=m*=y后y的值是 【-16】. 13 结构化程序设计的基本结构有三种,分别是【顺序结构、分支结构和循环结构】。 14 若有int a=5,c=4; 则表达式(— —a==++c)?— —a:c++的值是5,此时c的存储单元

的值为【6】.

15 若有说明语句:int x=1,y=0;则表达式x>(y+x)?10:12.5>y++??a?:?a?的值为【97】. 16 若有int x=7,则表达式x+=x-=x+x;执行后,x的值为【-14】。

17 设int a=1,b=2,c=3,d;执行d=!(a+b+C)后,d的结果是【0】 18 设int x=10,y,z;执行y=z=x;x=y==z后,变量x的结果是【1】。 19 设int x=9,y=8;表达式x==y+1的结果是【0】. 20 若x,a都是int型变量,则表达式x=(a=4,6*2)的值是【12】,表达式x=a=4,6*2的值

是【12】。

21 若a是int型变量,则表达式(a=4*5,a*2),a+6的值是【26】。 22 有int a;则执行a=25/3%3;后,a=【2】。

23 若int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值是【5.5】。 24 若int x=12,n=5;则表达式x%=(n%=2)的值是【0】。

25 已知字母b的ascii码为98,且char ch;则表达式ch=?b?+?8?-?3?的值为【103】。 26 , 号运算符得结合方向为自左向右的

27 与条件表达式 \中的表达式(n)等价的表达式是 (n!=0)。 28 C语言中,所有的C语言关键字必须小写。 29.检查以下的C语言标识符的正确性:

A int B a_1_2 C ab1exe D _x E print F i\\am 30 检查以下的C语言的关键字的正确性:

auto,enum,include switch,typedef,continue,signed,union,scanf if,struct,type default , register , enum, external 31 字符串\的长度是0

32 如果int a=1,b=2,c=3,d=4;则条件表达式\的值是1 33 为求出s=10!的值,则变量s的类型应当为ong 34 已知int i=10;表达式\的值是1

35在32位的计算机中,一个字长等于1个字节。

36设y是int型变量,判断y为奇数的关系表达是(y%2)==1. 37计算机机领域中,通常用英文单词“Byte”表示字节。

38表示“整数x的绝对值大于5”时值为“真”的C语言表达式是x>5||x<-5. 39设有以下变量定义,并已赋确定的值 char w; int x; float y; double z;

则表达式:w*x+z-y所求得的数据类型为:double.

40设x和y均为int型变量,且x=1,y=2,则表达式1.0+x/y的值为1。

41若已知a=10,b=20,则表达式!a*b的值是1。

第三章知识点

1有程序段:

int x;

scanf(“%d\\n”,&x);

printf( x%2= =0 ? “ even number %d” : “odd number %d”,x, x); 若输入3,则 printf 语句【输出 odd number3】 2 以下程序的输出结果是:

(1)main() { int sum,pad; sum=pad=5;

pad=sum++; pad++; ++pad;

printf(“%d”,pad);

} 【7】

3 下面程序的输出结果是

#include main( )

{ int x=10; { int x=20;

printf (\,\; }

printf(\;

} 【20,10】

4 以下程序的输出结果是:

main() {

int a=177;

printf(\

} 【261 】。

5 以下程序的输出结果是

main() { int a=0 a+=(a=8);

printf(\

} 【16】

6 以下程序输出的结果是

main()

{ int a=5,b=4,c=3,d; d=(a>b>c);

printf(\

} 【 0】

7 以下程序运行后的输出结果是

main()

?? { char c; int n=100; ?? float f=10; double x; ?? x=f*=n/=(c=50); ?? printf(\\\n\ ?? } 【 2 20】

8 以下程序运行后的输出结果是 ?? main() ?? { int a,b,c; ?? a=25; ?? b=025;

?? c=0x25;

?? printf(\\\n\?? } 【25 21 37】

9 对于语句 scanf (“%f ︼︼ %f,z=%f”,&x,&y,&z);,其合法的输入形式为

14.7︼︼︼2.0,z=15 (其中的︼表示空格)

10 使用语句scanf(\;输入变量x、y的值(︼代表空格),正确的输入是: x=1.25,y=2.4

11以下程序的输出结果是: n=65015 main()

{ unsigned int n; int i=-521; n=i;

printf(\; }

12 执行语句 printf(\;屏幕显示:ffff。

13 已知 long i=32768;执行语句printf(\;屏幕显示:-32768 14以下程序的输出结果是八进制数261

main()

{ int a=177;

printf(\ }

15语句:x++; ++x; x=x+1; x=l+x; ,执行后都使变量x中的值增1,与上述语句功能相同的赋值语句(不得与列举的相同)有x+=1 等.

16 以下程序的输出结果是_0_

main()

{ unsigned short a=65536; int b; printf(“%d\\n”,b=a); }

17若有定义:int a=10,b=9,c=8;接着顺序执行下列语句后,变量b中的值是3。

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

18若想通过以下输入语句使a=5.0,b=4,c=3, int b,c; float a;

scanf(\,%d,c=%d\,&a,&b,&c);

则输入数据的形式应该是:5.0,4,c=3

19 C语言本身没有提供输入/出语句,输入/出由C语言的标准输入/出库函数提供。

20 编写一个程序,从键盘输入一个三位整数,将它们逆序输出。例如输入127,输出721。

第四章知识点

1 C语言中,逻辑“真”等价于【非零的数】 2 以下程序的输出结果是

main() { int i;

for(i=1;i<=5;i++) { if(i%2) printf(“*”); else continue; printf(“#”); }

printf(“$”);

} 【*#*#*#$】

3 若有:int a=1,b=2,c=3,d=4,m=2,n=2;

则执行(m=a>b)&&(n=c>d)后n的值是【2】

4 main()

{ int a,b,d=241; a=d/100%9;

b=(-1)&&(-1); printf(“%d,%d”,a,b); }

输出 的结果是【 2,1】

5 若有int x=10,y=20,z=30;以下语句执行后x,y,z的值是

if (x>y)

z=x;x=y;y=z; 【 x=20,y=30,z=30】

6 以下程序的输出结果是

main()

{ int a=1,b=3,c=5,d=4,x; if(a

if(c

if(b

printf(“x=%d”,x);

} 【2】

7 以下程序的输出结果是

main()

{ int x=2,y=-1,z=2; if(x

if(y<0) z=0; else z+=1;


2011C语言复习题给学生(本科80学时).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:jubingxi

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: