无忧首页企业系统我的无忧
无忧服务:
兼职活动培训
娱乐交友:
交友社区资讯
全职实习:
实习暑假寒假
微信号:school51
扫一下,立即关注
加关注
在线支付,立省10元
下载新版APP
===大学生成长生活平台===

2011年全国计算机等级二级C语言模拟试题及答案(6)

2012-12-26来源/作者:卫凯点击次数:413

一.单项选择题 
1.各种基本数据类型的存贮空间正确的长度排列为__________。 
A.CharB.DoubleC.CharD.Float

2.下面的变量说明中_____________是正确的。
A.Char:a, b, c;                 
B.Char a; b; c; 
C.Char a, b, c; 
D.Char a, b, c

3.main( )
{  int n;
   ( n=6*4,n+6),n*2;
   printf(“n=%d\n”,n);
}   此程序的输出结果是______________.
A.30    
B.  24     
C.  60      
D.  48

4.若有如下定义,则__________和_________是对数组元素的正确的引用。.
   int  a[10] , *p ;
   p=a ;
A.  *&a[10]     
B.  a[11]      
C.  *(p+2)      
D. *p

5.设整型变量n的值为2,执行语句“n+=n-=n*n;”后,n的值是__________
A.  0     
B.  4    
C.  - 4     
D.  2

6.表达式y=(13>12?15:6>7?8:9)的值为____________ 。 
A   9     
B   8    
C  15    
D.  1

7.若x=5,y=3 则y*=x+5; y的值为_______________.
A.  10   
B.  20    
C.  15      
D.  30

8.C语言的输入与输出操作是由____________完成的。
A.输入语句                  
B.输出语句
C.输入与输出函数            
D.输入与输出语句

9.语句 for(k=0;k<5;++k)
         {  if(k= = 3) continue;
            printf(“%d”,k);
         }的输出结果为___________.
A.012    
B. 0124     
C.  01234      
D.  没有输出结果

10.从循环体内某一层跳出,继续执行循环外的语句是:___________。
A. break语句                  
B.return语句
C.continue语句                 
D.空语句。

11.Break语句的正确的用法是____________。
A.无论在任何情况下,都中断程序的执行,退出到系统下一层。
B.在多重循环中,只能退出最靠近的那一层循环语句。
C.跳出多重循环。
D.只能修改控制变量。

12.两个指针变量的值相等时,表明两个指针变量是__________。
A.占据同一内存单元。 
B.指向同一内存单元地址或者都为空。
C.是两个空指针。                  
D.都没有指向。

13.不正确的指针概念是__________。
A.一个指针变量只能指向同一类型的变量。
B.一个变量的地址称为该变量的指针。
C.只有同一类型变量的地址才能存放在指向该类型变量的指针变量之中。
D.指针变量可以赋任意整数,但不能赋浮点数。

14.设char ch=’A’;表达式ch!(ch>=’A’&&ch<=’Z’)?ch:(ch+32)的值是_________。 
A.A     
B.  a    
C. Z     
D.  z

15.根据C语言的语法规则,下列________个是不合法标识符。
A.While    
B. Name     
C. Rern5    
D. _exam

16.设单精度变量f,g均为5.0,使f为10.0的表达式是__________。
A.  f+=g     
B.  f-=g+5      
C.  f*=g-15       
D.  f / =g*10

17.  设整型变量n的值为2,执行语句“n+=n- =n*n ;”后,n的值是__________。
A.  0        
B.  4          
C.  –4        
D. 2

18.下列不是赋值语句的是__________。
A.A++       
B.  a=  = b       
C.  a+=b        
D.  a=1

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

20.设有数组定义:char array[]=”China”;则数组所占的存贮空间为__________。
A.4个字节  
B. 5个字节     
C. 6个字节    
D. 7个字节

二.写出下列程序的运行结果
1.   main ( )
{  int x=10,y=10;
   printf(“%d  %d\n”,x--,--y);   }
该程序的运行结果是___________________________________。

2.main( )
    {  int  j , k , p, s;
     s=0 ;
     for (j=1; j<=3; j++)
     {  p=1;
        for(k=1; k<=j; k++)
          p=p*k;
         s=s+p;
      }
printf(“s=%d\n”,s);           }
该程序的运行结果是___________________________________。

3.  # include  “stdio.h”
 main( )
 { int a[]={1,2,3,4,5}, *p;
   p=a;
   *(p+2)+=2;
   printf(“%d, %d ”, *p, *(p+2));             }
该程序的运行结果是___________________________________。

4.main( )
{  int a[]={2,4,6,8,10};
   int y=1,x,*p;
   p=&a[1];
   for(x=0;x<3;x++)
      y + =*(p+x);
   printf(“%d\n”,y);  }
该程序的运行结果是___________________________________。

5.main()
   {  int a[5],  k;
      for(k=0;k<5;k++)
        a[k]=10*k ;
      printf(“%d”, a[k-1]) ;      }
该程序的运行结果是___________________________________。

三.判断题
1.  函数一般由函数的说明部分和函数体部分组成。               (     )
2.  C语言中数据类型只有整型、实型和字符型。                 (     )
3.  数组的下标从1开始。                                     (     )
4.  假设有int  a[10],  *p;       则P=&a[0]与p=a等价。         (     )
5.  getchar()函数的功能是从键盘上输入一个字符串。               (    )
6.  在C语言中定义一个文件指针的方法为:FILE  *fp; 。         (    )
7.  构成数组的各个元素可以有不同的数据类型。                  (    )
8.  C语言的数据类型只有int 型和 float 型。                     (    )
9.  从循环体中退出只能使用goto语句。                          (    )
10.Continue语句的作用是继续程序中的下一个循环。               (    )

四.编程题
1.  从键盘上输入20个元素的值存入一维数组a中,然后将下标为(1、3、5、7、9……)的元素值赋值给数组b,输出数组b的内容。
2.  编程序求 3,-30,20,6,77,2,0,-4,-7,99这十个数中最大值与最小值。
3.  输入两个整数,调用函数stu( )求两个数和的立方,返回主函数显示结果。
4.  将文件file1.txt中的内容读出并显示到屏幕上。 
5.  编程计算1-100之间的奇数和与偶数和。

参考答案

一.单项选择题 
1. C    2. C   3. C   4. C D   
5. C   6. B   7. D    8. C  9. B    10. C  
11. B  12.A     13  D   14. B  15. A   16.  A. 
17.  C    18. B  19. A.20. C. 

二.写出下列程序的运行结果
1.10  9     2.S=9     3.  1,5      4.19      5.40

三.判断题
1.  对   2.  不对   3.  不对   4.  对    5.不对
6.  对   7.  不对   8.  不对   9.  不对  10.不对

四.编程题
1.  main()
{   int  m[20],n[10];
int  a,b=0;
for(a=0;a<20;a++)
{   scanf(“%d”,&m[a]);
    if(a%2= =1)
    {   n[b]=m[a];
        b++;      }
}
}

2. main()
{   int  m[10]={ 3,-30,20,6,77,2,0,-4,-7,99},max,min;
    max=min=m[0];
for(a=0;a<10;a++)
{   if(m[a]>max)
      max=m[a];
   if(m[a]<min)
      min=m[a];
}
printf(“%d,%d”,max,min);

3. int  stu(int a,int b)
{   int c;
c=a*a+b*b;
return c;     }
main()
{   int  x,y,z;
scanf(“%d,%d”,&x,&y);
z=stu(x,y);
printf(“%d”,z);    }

4.main()
{   FILE  *fp;
    Char ch;
    fp=fopen(“write.txt”,“r”);
    ch=fgetc (fp);
    while(ch!= EOF)
{   putchar(ch);
    ch=fgetc(fp);   }
fclose(fp);
}

5.main()
{
int  sum1=0,sum2=0,a,b;
for(a=1;a<=100;a++)
  if(a%2= =0)  if(a%2= =0)
     sum1+=a;
  else
     sum2+=a;
printf(“%d,%d”,sum1,sum2);
}

编辑特别推荐:

2011年计算机等级二级C语言课后练习题及答案解析汇总

2011年全国计算机等级二级C笔试考前练习习题汇总

2011年计算机等级考试二级C语言基础教程汇总

2011年计算机等级考试二级C语言辅导笔记汇总

2011年计算机等级考试二级C语言入门教程汇总





相关阅读



关于我们 | 联系我们 | 用户指南 | 网站地图 | 意见建议 | 会员注册 | 用户协议 | 隐私政策