加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

C语言测试题

(2007-11-09 15:31:44)
标签:

学习公社

分类: C语言试题
 

 

第I卷  选择题(共50分)

一、选择题(共25题,每题2分,共50分)

1.        以下正确的C语言常量是(    
A、0789    B、2e2.4   C、’abd’ D、’\t’

2.        下列变量定义中合法的是(      )
A、short   aL=5678;                B、double  b=l+5e2.5;
C、long    do=0xfdaL;              D、float   2_and=le-3;

3.        若已定义x和y为double型,则表达式:x=1,y=x+3/2的值是(       )
A、1              B、2.0            C、2          D、2.5

4.        设x和y为int型变量,表达式x+=y;y=x+y;x-=y;的功能是(     
A、把x和y按从小到大排列          B、把x和y按从大到小排列
C、无确定结果                      D、交换x和y的值

5.        若x,y均定义为int 型,z定义为double型,以下不合法的scanf 函数调用语句是:(  )
A.scanf(“%d, %x, %le”,&x,&y,&z);
B.scanf(“%2d%4d %lf”,&x,&y,&z);
C.scanf(“%d%d %lf”,&x,&y,&z);
D.scanf(“%x%o %6.2f”,&x,&y,&z);

6.      设有程序段:
  int  x=8;
  while  (x=0)
       x=x-1;
 则下列描述正确的是(   
A、while循环将执行10次     B、while循环将执行无限次
C、while循环将一次也不执行  D、while循环将执行1次

7.        以下程序的输出结果是(   
A、0              B、1              C、3          D、不确定值
main()
{ int  x=10,y=3;
  printf(“%d\n”,y=x/y);
}

8.      程序片段执行后输出结果是(   
int  x=100,  y=200;
printf ("% d",  (x, y));
A、100    B、200   C、100,200  D、编译出错

9.      设有:int  a=3, b= 4, c= 5,x , y; 执行 !(x=a)&&(y=b)&&0表达式的值为(   
A、1       B、0   C、3        D、4

10.  设有语句 int  a=3 ;  则执行了语句 a+ = a - = a * a后,变量a 的值是(     )。
A、3       B、0    C、9         D、-12

11.    以下叙述中不正确的是(    
A、在C程序中,逗号运算符的优先级最低
B、在C程序中,abc和ABC是两个不同的变量
C、如果变量a和b的类型相同,在执行了赋值表达式a=b后,变量b的值改变为0
D、若变量a为int型变量,但赋值语句a=12.56是正确的

12.    表达式sizeof(double)是(    )类型的表达式。
A、长整型                       B、整型
C、双精度型                     D、浮点型

13.    执行下列程序段后,结果为(      )
     n = 0;
       while ( + + n < 4)
          printf ( " % 2d", n);
    A.  0 1 2 3 4       B. 0 1 2 3      C. 1 2 3      D. 1 2 3 4

14.    下面程序段:(    )
x=3;
while (x>0)
{ if (x%3) printf(“#”); x--;}
A. 将输出##              B. 将输出###
C. 将输出#                      D. 含有不合法的控制表达式

15.    putchar函数可以向终端输出一个(  
A、整型变量表达式值   B、实型变量值
C、字符串        D、字符或字符变量值

16.    若以下变量均是整型,且num=sum=7, 则计算表达式sum=num++,sum++,++num 的值为:(  
A . 7         B.      C.            D.   10

17.    c语言中的10110是一个()
A.二进制整数  B.八进制整数  C.十进制整数  D.十六进制整数

18.  为表示关系x>=y>=z,应使用C语言表达式:(    )
A. (x>=y) && (y>=z)     B: (x>=y) AND (y>=z)
C: (x>=y>=z)            D: (x>=y) & (y>=z)

19.    下面程序的输出结果是(  )。
    main( )
    { int a,b,c ;
     int x=5,y=10;
     a=(- -y= =x++) ? - -y : ++x ;
     b=y++ ;
     c=x ;
     printf(“a=%d ,b=%d ,c=%d ”,a,b,c );  }
A、a=6 , b=9 , c=7              B、a=6 , b=9 , c=6    
C、a=7 , b=9 , c=6              D、a=7 , b=9 , c=7

20.    下面程序的 执行结果是(  )。
     main( )
     { int  n=4 ;
      while(n- -)  printf(“%d”,- -n); }
A、2  0       B、3           C、3        D、2  0

21.    有如下程序
main()
{ int i,sum;
for(i=1;i<=3;sum++)  sum+=i;
printf(“%d\n”,sum);
}
该程序的执行结果是(   )
A. 6                            B. 3                      C. 死循环         D. 0

22.    有如下程序
main()
{ int x=23;
do
 { printf(“%d”,x--);}
while(!x);
}
该程序的执行结果是(   )
A) 321         B) 23            C) 不输出任何内容       D) 陷入死循环

23.    C语言中,对于由do…while语句构成的循环,以下说法正确的是(  )。
A、不能由其他语句代替
B、无论循环条件是否满足,程序都至少执行一次循环
C、在某些情况下不能与while语句互换
D、“ do {语句;} while(表达式) ”书写格式正确无误

24.    设有程序段:
int x=11,y=3,z;
printf(“%d\n”,z=(x%y,x/y));
输出结果是(    )
A.2          B.0              C.3              D.1

25.    分别输入5和6,程序运行结果正确的是(    )
main()
{
int x;
scanf(“%d”,&x);
if(x-->5)  printf(“%d”,x);
else  printf(“%d”,x);
}
A.5        B.4            C.5            D.4  4

第二卷 非选择题  (共三大题,共50分)

二、填空题(共20空,每空1分,共20分)

1. C语言中的基本数据类型分为        型,        型和        型.

2. 循环语句:for(i=-1;i<3;i++)printf(“!”);的循环次数是:       

3. 将一个float类型的变量x强制转化为双精度浮点型的表达式是          

4. C语言提供的三种逻辑运算符是                     

5. C语言中的三种基本程序结构是                               

6.一个long型变量在内存中占        个字节。

7.对于程序段for(a=1;a<=20;a++);退出循环时a的值为       

8.设int i=10;则执行j=++i;后j的值为       

9.能表示一个整数i既是奇数又是3的倍数的表达式                         .

10.要在用户屏幕上显示“this is a cat”(包括双引号),则对应的printf语句为

                         

11. 逻辑表达式3&&-1||0的值为       

12.将数学式100≤x≤120转换成C语言表达式为x>=100&&x<=120

13. 对应scanf("a=%d,b=%d",&a,&b);语句的输入a为3,b为7的键盘输入格式是

                

14. C语言中三种常用的循环控制结构是        循环、        循环和        循环。

15.以下程序段的输出结果是         

int i=9;

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

16.已知字母A的ASCII码为65。以下程序运行后的输出结果是       

main()

{ char a ;

  a=’A’+’5’-’3’;

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

}

三、看程序写结果(共5小题,每小题4分,共20分)

1.以下程序在运行时,输入变量a的值为1,变量b的值为2,写出程序的运行结果:

main( )

int a, b,t=0;

   scanf(“%d%d”,&a, &b);

   if (a=2)  

       {t=a; a=b; b=t; }

   printf (“%d,%d\n”,a,b);

}

 

结果:                

2. main(  )

{int   i,sum=0;

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

    sum+=i;

printf(“i=%d,sum=%d\n”,i ,sum);}

 

结果:              

3. main()

{

  int a=10,b=0;

  do

  {

    b+=2;

    a-=b+2;

    printf(“a=%d,b=%d\n”,a,b);

   }while(a>=0);

 }

 

程序运行结果:

 

 

                           

4.有如下程序

main()

{ int x=1,a=0,b=0;

switch(x){

case 0: b++;

case 1: a++

case 2: a++;b++

}

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

}

该程序的输出结果是:               

5.#i nclude”stdio.h”

main()

{

   char c;

   while((c=getchar())!=’?’)

       putchar(c++);

}

 

当如下程序输入为:“abc?efg”时,程序运行结果:        

四、程序设计题(共10分)

1.从键盘上输入10个整数,求这十个整数中的最大数和最小数。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2、输入n值,打印下列高为n的直角三角形。

*

**

***

****

*****

 

 

0

阅读 收藏 喜欢 打印举报/Report
前一篇:真挚的感情
后一篇:C语言试题
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有