2009
试题一、单选题(每小题2分,共20分)
1. C语言中,long int型数据在内存中的存储形式是     
A.补码
B.反码
C.原码
DASCII
2. 假设有定义:int k;下面程序段编译运行的情况是_____
for (k=1; k; k++)  printf ("%d ", k);
A.编译错误
B.能运行, 是死循环
C.能运行, 正常结束
D.以上说法都不对
3. 循环语句while (!x&&!y)中的循环条件表达式等价于______
Ax=0 && y=0
B!(x || y)
C!( x==0 || y==0)
D!( x==0 && y==0)
4. 对于 int x, y; 语句 if (x < 0) y = -1; else if (!x) y = 0; else y = 1;等价于_____
Aif (x>=0) y=0; if(x) y=1; else y=-1;
By=0; if (x>=0) if(x) y=1; else y=-1;
Cif (x != 0) if (x > 0) y = 1; else y = -1;
Dy=0; if (x!=0) if(x>0) y=1; else y=-1;
5. 语句 if (4/5 > 3/4) a=1; else a=0; 运行后,a的值是_____
A1
B0
C.编译出错
D.与编译器相关
6. 下列描述不正确的是_______
    A.外部变量定义在函数外部                B.局部变量定义在函数内部
    C.自动变量定义在函数内部            D.静态变量定义在函数外部
7. 假设sizeof(int)的值为4,对数组定义:int a[3][6];则sizeof( a[0] )的值为______
A12            B4                C24            D18
8. 有如下定义:int  x[]={1,2,3},*p=x,y; y=*p++;相当于_____
Ay=x[0],p++
B.y=1,x++
Cy=*(++p)
y=2,p=x+1
9. 根据声明int p[5], *a[5];下列表达式正确的是______
Ap=a
Bp[0]=a
C*(a+1)=p
D. a[0]=2
10. 有如下定义,下列赋值正确的是________
struct node {
        char s[10];
        int k;
struct node *next;
} p[5]*q=p;
Aq.k=2
Bp[0]->k=2
C(p->s)[0]=‘a’
D.q->s=“a”
试题二、填空题(每小题2分,共30分)
1. 表示 x 的取值在 [-10, 0] [10, 15] 的范围内为真,否则为假C语言表达式是_____
2. int a = 6, b = 0, c = 3,则表达式 a && b || b - c 的结果是_____
3. 表达式 !!”2010-01-27” 的值为_______
4. 假设字符变量ch中存放有大写英文字母,将其转换为相应的小写英文字母的表达式是______
5. 执行下面程序代码后,s值为_____
int i, s;
for (i=5,s=0;i>s;i--) {
c语言中struct
  if (i==0) break;
  if(i%2) continue;
  s+=--i;
}
6. 执行下面程序代码的输出结果是_____
    char *s1="abcd",*s2="abbb";
    while (*s1++ == *s2++);
        printf("%d#",*s1 - *s2);
7. 执行下面程序代码后,s值为_____ 
int a=1, b=2, s=0;
    switch (a>b) {
        default: switch(s){
                  case 0:s+=1;
                  default:s+=2;break;

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