C语言基础练习100题(含答案)

C语言基础练习100题(含答案)

雷柳青编排

1、下面程序的输出是________

#include void main() { int k=11;

printf(\}

A) k=11,k=12,k=11 B) k=11,k=13,k=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b

2、在下列选项中,不正确的赋值语句是________. A) ++t; B) n1=(n2=(n3=0)); C) k=i=j; D) a=b+c=1;

3、下面合法的C语言字符常量是__________.

A) '\\t' B) \ C) 65 D) A

4、字符(char)型数据在微机内存中的存储形式是____. A) 反码 B) 补码 C) EBCDIC码 D) ASCII码

5、设 int a=12,则执行完语句a+=a-=a*a后,a的值是________

A) 552 B) 264 C) 144 D) -264

6、执行下面程序中的输出语句后,输出结果是______.

#include void main() {int a;

printf(\}

A) 65 B) 20 C) 15 D) 10

7、下面程序的输出是__________.

#include void main() {int x=023;

printf(\}

A) 17 B) 18 C) 23 D) 24 8、下面程序的输出是___________.

#include void main() {char ch1,ch2; ch1='A'+'5'-'3';

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

printf(\}

A) 67,D B) B,C C) C,D D) 不确定的值 9、以下程序的输出结果是________.

#include void main() { int x=10,y=10;

printf(\}

A) 10 10 B) 9 9 C) 9 10 D) 10 9 10、若x和y都是int型变量,x=100,y=200,且有下面的程序片段:

printf(\

上面程序片段的输出结果是_______. A) 200 B) 100

C) 100 200 D) 输出格式符不够,输出不确定的值

11、阅读下面的程序

#include void main() {

int i,j; i=010; j=9;

printf(\ }

则程序的运行结果是________.

A) 1,19 B) -1,19 C) 1,17 D) -1,17

12、阅读下面的程序

#include void main() {

int i,j,m,n; i=8;j=10; m=++i; n=j++;

printf(\}

程序的运行结果是_________.

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

13、若已定义int a,则表达式a=10,a+10,a++的值是___. A) 20 B) 10 C) 21 D) 11 14、阅读下面的程序

#include void main() {

int i,j;

scanf(\ printf(\}

如果从键盘上输入1234567<回车>,则程序的运行结果是________.

A) i=123,j=4567 B) i=1234,j=567 C) i=1,j=2 D) i=123,j=45

15、下面程序的输出结果是________.

#include void main() {

int a=-1, b=4, k;

k=(++a<=0)&&(b--<=0); printf(\}

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

16、下面程序的输出结果是_______.

#include void main() {

int a=5,b=3;

float x=3.14, y=6.5;

printf(\}

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

17、若有以下定义和语句: int a=010, b=0x10, c=10; printf(\则输出结果是_________.

A) 10,10,10 B) 8,16,10 C) 8,10,10 D) 8,8,10 18、已知有double型变量x=2.5,y=4.7,整型变量a=7, 则表达式 x+a%3*(int)(x+y)%2/4 的值是_________. A) 2.4 B) 2.5 C) 2.75 D) 0

19、设有以下语句:int x=10;x+=3+x%3,则x的值是._________

A) 14 B) 15 C) 11 D) 12

20、若d为double型变量,则表达式d=1,d+5,d++的值是_______.

A) 1 B) 6.0 C) 2.0 D) 1.0 21、若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a的值__________.

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

22、若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是____.

A) 0 B) 2 C) 1.5 D) 1

23、在C语言中,以下叙述不正确的是________.

A) 在C程序中,无论是整数还是实数,都能被准确无误的表示

B) 在C程序中,变量名代表存储器中的一个位置 C) 静态变量的生存期与整个程序的生存期相同 D) C语言中变量必须先定义后引用

24、设a为整型变量,不能正确表达数学关系10

A) 1010&&a<15 D) !(a<=10)&&!(a>=15)

25、如果c为字符型变量,判断c是否为空格不能使用________.(假设已知空格ASCII码为32) A) if(c=='32') B) if(c==32) C) if(c=='\\40') D) if(c==' ')

26、执行下面程序时,若从键盘输入\,则程序的运行结果是________. #include void main( ) { int k; char cp; cp=getchar( );

if (cp>='0' && cp<='9') k=cp-'0';

else if (cp>='a' && cp<='f') k=cp-'a'+10; else k=cp-'A'+10; printf(\ }

A) 2 B) 4 C) 1 D) 10 27、执行下面程序后,运行结果是________. #include void main( ) { int x=41,y=1;

if (x%3==0 && x%7==0)

{ y+=x;printf(\ else

{y=x;printf(\ }

A) y=41 B) y=43 C) y=42 D) y=1

28、运行下面程序时,从键盘输入\,则输出结果是______. #include void main( ) { int x,y,z;

scanf(\ if (x

if (y

A) 34 B) 12 C) 9 D) 不确定的值

29、运行下面程序时,从键盘输入字母H,则输出结果是________.

#include void main( ) { char ch;

ch=getchar( ); switch(ch)

{ case 'H':printf(\

case 'G':printf(\ default:printf(\ } }

A) Hello! B) Hello!

Good Morning! C) Hello! D) Hello!

Good morning! Bye_Bye! Bye_Bye!

30、执行下列程序段后的输出结果是_________. int x=1,y=1,z=1; x+=y+=z;

printf(\

A) 3 B) 2 C) 1 D) 4 31、设ch是char型变量,值为'A',则表达式ch=(ch>='A' && ch<='Z')?ch+32:ch的值是_____.

A) Z B) a C) z D) A

32、下面程序的输出结果是________. #include void main( )

{ int x=8,y=-7,z=9; if (x

if (y<0) z=0; else z-=1; printf(\ }

A) 8 B) 1 C) 9 D) 0

33、运行下面程序时,若从键盘输入\,4 \,则程序的输出结果是_______. #include void main( ) { int a,b,s;

scanf(\ s=a;

if (s

printf(\ }

A) 14 B) 16 C) 18 D) 20

34、下列程序的执行结果是_________. #include void main( )

{ int x=0,y=1,z=0; if (x=z=y) x=3;

printf(\ }

A) 3,0 B) 0,0 C) 0,1 D) 3,1 35、能够完成如下函数计算的程序段是______. ┌ -1 x<0 y= ┤ 0 x=0 └ 1 x>0

A) y=1; B) if (x>=0) if(x!=0) if(x>0) y=1; if(x>0) y=1; else y=0; else y=0; else y=-1; C) y=0; D) y=-1;

if (x>=0) if (x>0) y=1; if (x>0) y=1; else y=0; else y=-1;

36、以下程序的执行结果是________. #include void main( ) { int x=1,y=0; switch (x)

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4