河南理工大学   20102011    学年第 2 学期
C语言程序设计》试卷A
考试方式:闭卷                              本试卷考试分数占学生总评成绩的  70  %
注:请将答案填写在答题纸上,写在试卷上,不得分。
一、单项选择题(每题1分,共30) ,在每小题列出的四个选项中只有一个选项是符合题目要求的,请在答案卡上将正确答案所对应选项的字母涂黑。
1. 以下选项中正确的语句组是______。
A) char s[];s="book!"            B) char *s;s={"book!"};
C) char s[10];s="book!"          D) char *s;s="book!";
2.C语言源程序文件的后缀是______。
A) ".c "        B) ".obj"        C) ".exe"      D) ".txt"
3.以下选项中不正确的常量是______。
A)a      B)'a'        C)5    D)"b"
4下列不正确的转义字符是     
  A\\    B\'        C074      D\0
5.C语言程序设计中可以对程序进行注释,注释部分可以用______符号括起来。
A){ }        B)[  ]      C)/*  */      D) */  /*
6.在一个C程序中,main函数出现的位置是       
A)必须在程序的最后面        B)可以在任意地方
C)必须在程序的最前面        D)必须在系统调用的库函数的后面
7.若已定义xydouble类型,则表达式x=2,y=x+3/2 的值是       
A3.500000        B3            C2.000000            D3.000000
8.xy均为float类型变量,下面不正确的赋值语句是     
Ax=x+1;        By=(x%2)/10;    Cx*=y+8;        Dx=y=0; 
9.若有以下定义,则能使其值为3的表达式是       
int k=7,x=12;
A)x%=(k%=5)      B)x%=(k-k%5)      C)x%=k-k%5        D)(x%=k)-(k%=5)
10若有以下定义和语句,则输出结果是     
  char c1='b',c2='e';   
  printf("%d%%,%c\n",c2-c1,c2-'a'+'A');
A%3,E    B3%,E        C2%,E        D%2,E
11xyzint型变量,且x3y4z5,则下面表达式中值为0的是          
A)"x"&&'y'          B)  x<=y          C) x||y+z&&y-z          D)!((xy)&&!z ||1)
12分析以下C程序,其正确的运行结果是        (注:ㄩ表示空格)
#include <stdio.h>
main()
{  long y=-43456;
  printf("y=%-8ld\n",y);
  printf("y=%-08ld\n",y);
  printf("y=%08ld\n",y);
  printf("y=%+8ld\n",y);
}
A)    y=ㄩㄩ-43456                          B)  y=-43456   
        y=-ㄩㄩ43456                              y=-43456
        y=-0043456                                y=-0043456
        y=-43456                                  y=+-43456
C    y=-43456                              Dy=ㄩㄩ-43456   
        y=-43456                                y=-0043456
        y=-0043456                              y=00043456
        y=ㄩㄩ-43456                            y=+43456
13.设整型变量s,t,c1,c2,c3,c4的值均为2,则执行语句s=c1= =c2||t=c3>c4后,s,t的值为       
  A12            B11            C01          D10
14阅读以下程序,当输入数据的形式为25,13,10,正确的输出结果为       
#include <stdio.h>           
main()
{  int x,y,z;
    scanf("%d%d%d",&x,&y,&z);
    printf("x+y+z=%d\n",x+y+z);
}
Ax+y+z=48          Bx+y+z=35          Cx+z=35          D) 不确定值
15k=4,a=3,b=2,c=1表达式k<a?k:c<b?c:a值是     
字符串长度不能超过32位  A4            B3            C2            D1
16执行以下程序后的输出结果是     
  main()
  {
char k; int i;
for(i=1;i<3;i++)
{
  scanf("%c",&k);
      switch(k)
{
    case  '0':  printf("another ");
    case  '1':  printf("number ");
}
}
}
程序运行是,从键盘输入:01<回车>(注:ㄩ表示空格),程序执行后的输出结果是     
Aanother number              Banother number another       
Canother number number        Dnumber number
17if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是   
A)必须是逻辑值      B)必须是整数值  C)必须是正数    D)可以是任意合法的数值
18.下面程序段的运行结果是       
        char c[]="\t\v\\\0will\n";
        printf("%d",strlen(c));
A14        B3      C9        D)字符串中有非法字符,输出值不确定
19.在函数调用时,若实参为变量,则下列关于函数形参和实参的叙述中正确的是      
A)函数的实参和其对应的形参共占同一存储单元
B)形参只是形式上的存在,不占用具体存储单元
C)同名的实参和形参占同一存储单元
D)函数的形参和实参分别占用不同的存储单元
20下面关于函数参数的说法不正确的是     
  A形参可以是常量、变量或表达式                  B实参可以是常量、变量或表达式
  C在带参函数的定义中,必须指定形参的类型        D形参应与其对应的实参类型一致
21以下程序的输出结果是     
#include <stdio.h>
#define MIN(x,y)    (x)<(y)?(x):(y) 
main()
{  int i,j,k;
  i=10;  j=15;  k=10*MIN(i,j);
  printf("%d\n",k);
}
A15        B100          C10                D150
22以下一维数组a的定义中,正确的是     
  Aint a(10)                                  B)  int n=10,a[n]; 
Cint n;                                      D#define  SIZE  10 
scanf("%d",&n);;                                int a[SIZE];
int a[n]
23若有定义:int a[4][3],(*prt)[3]=a,*p=a[0];,则不能正确表示数组元素a[1][2]的表达式是       
A) *(*(prt+1)+2)        B) *(p+5)            C) (*(prt+1))[2]            D) *((*prt+1)[2]
24有以下程序:
#include<stdio.h>
#include<stdlib.h>
main()
{  int *a,*b,*c;
  a=b=c=(int*)malloc(sizeof(int)); 
  *a=1;*b=2;*c=3;
  a=b;
  printf("%d,%d,%d\n",*a,*b,*c);
}
程序运行后的输出结果是     
A3,3,3        B2,2,3        C1,2,3            D1,1,3
25. 以下程序的输出结果是       
struct st
{  int x;
    int *y;
}*p;
int dt[4]={10,20,30,40};

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。