2010湖南工程学院年C语言程序考试题
一、单选题
1. C程序的基本构成单位是( C
A)文件        B)命令        C)函数        D)语句
2. 在C语言中,'a'是( B
A)字符串常量        B)字符常量        C)变量        D)函数
3. 字符串函数puts在C语言中,“a=b=c=5”属于哪种表达式?( B
A)关系        B)赋值        C)逻辑        D)非法
4. 设a、b为整型,则表达式(a=2,b=5,b++,a+b)的值是( D
A)2        B)6        C)7        D)8
5. 若有以下变量定义:
int  b=2;
float  a=5;
则表达式“a/b”之值为( A
A)2.5        B)2        C)3        D)5/2
6. 若j=3,则表达式(++j)+(j++)的值为( C
A)6        B)7        C)8        D)10
7. 以下只能输入单个字符的函数是( C
A)printf( )        B)puts( )        C)getchar( )        D)putchar( )
8. 若a的原值为4,则表达式“a*=a-=3”运算后,a的值是( D
    A)13    B)4        C)3        D)1
9. 若a=5、b=3、c=1,则表达式“a>b>c”的值为( A
    A)0        B)1        C)3        D)5
10. 若有代数式:
    以下错误的C语言表达式是( C
A)a/b/c*e*3        B)3*a*e/b/c        C)3*a*e/b*c        D)a*e/c/b*3
11. 下列能输出字符数组str中字符串的语句是( B
    A)printf("%c",str[0]);        B)printf("%s",str);
C)printf("%s",str[]);            D)putchar(str);
12. 若p=&x,则下列关系表达式之值为1的是( B
    A)p==x        B)*p==x        C)&p==x        D)*x==p
13. C语言中最基本的数据类型包括( B
    A)整型、实型、逻辑型            B)整型、实型、字符型
C)整型、逻辑型、字符型        D)整型、实型、字符串型
14. C语言中,要求运算对象必须是整型数据的运算符是( A
    A)%        B)/        C)\        D)&&
15. 表示数学关系“x≥y≥z”的C语言表达式是( C
    A)x>=y>=z        B)x>=y || y>=z        C)x>=y&&y>=z        D)x≥y≥z
16. 以下说法中正确的是( C
    A)C程序总是从文件中第一个函数开始执行
B)C程序中,只有main( )函数才可以调用其他函数
C)C程序总是从main( )函数开始执行
D)C程序中的main( )函数必须放在程序的开头
17. 若有定义:
int  a=7;
float  x=2.5,y=4.7;
则表达式x+a%3*(int)(x+y)%2/4的值为( A
    A)2.5        B)2.75        C)3.5        D)0
18. 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为( C
    A)int        B)float        C)double        D)不确定
19. 有输入语句:
scanf("%d,%d",&a,&b);
为使变量a、b分别为5和3,从键盘输入数据的正确形式为( B
    A)5  3<回车>        B)5,3<回车>        C)a=5  b=3<回车>        D)a=5,b=3<回车>
20. 定义如下变量和数组:
    int  j;
    int  x[3][3]={1,2,3,4,5,6,7,8,9};
    则下面语句的输出结果是( C
    for (j=2; j>=0; j--)
        printf("%2d",x[j][2-j]);
    A)1 5 9            B)1 4 7        C)7 5 3            D)3 6 9
21. 执行下面程序后,a的值是( B
        #include <stdio.h>
        #define  SQR(x)  x*x
        void main( )
        {int  a=10,k=2,m=1;
        a=SQR(k+m);
        printf("%d\n",a);
}
    A)10        B)5        C)2        D)1
22. 以下叙述不正确的是( C
    A)在函数内部定义的变量是局部变量
B)函数中的形式参数是局部变量
C)全局变量的作用范围仅限于其所在的整个文件
D)局部变量的作用范围仅限于本函数
23. 设a=3,b=4,c=2,d=1,则表达式“a>b?a:c>d?c:d”的值为( C
A)4        B)3        C)2        D)1
24. 有以下程序段:
x=-1;
do
x=x*x;
while(!x);
执行时,循环体执行的次数为( B
A)0        B)1        C)2        D)不确定
25. 以下不正确的if语句形式是( C
    A)if (x>y&&x!=y);
B)if (x= =y)  x+=y;
C)if (x!=y) scanf("%d",&x)
  else  scanf("%d",&y);
D)if (x<y)  {x++;y++;}
26. 以下程序的输出结果是( C
    #include <stdio.h>
    void main( )
    {int x=2,y=-1,z=2;
    if (x<y)
        if (y<0)    z=0;
        else    z+=1;
    printf("%d\n",z);}
A)0        B)1        C)2        D)3
27. 以下能正确计算1×2×3×…×10的程序段是( A
A)    i=1,s=1;                    B)    s=1;i=1;
    do                            while(i<=10)
      {s=s*i;i++;}                        s=s*(++i);
    while(i<11);
C)    for(i=1,s=0;i<=10;i++)        D)for(i=1,s=1;;i++)
          s=s*i;                        s=s*i;
28. 若j为整型变量,则以下循环执行次数是( C
for  (j=0;j= =0;)
        printf("%d",j--);
    A)无限次        B)0次        C)1次        D)2次
29. 若有说明:int  a[10];则对a数组元素的正确引用是( C
    A)a[3.5]        B)a(8)    C)a[6-5]        D)a[10]
30. C语言规定,变量做实参时,它和对应形参之间的数据传递方式是( B
A)地址传递        B)单向值传递        C)双向值传递        D)由用户指定传递方式
31. C中,一个float类型的数据在内存中占( C )个字节。
A) 1          B) 2          C) 4          D) 8
32. 设有程序段:
int k=5;
while (k<=0)
k--;
则下列描述中正确的是( C
A) while循环执行5次            B) 循环是无限循环
C) 循环语句一次也不执行        D) 循环体语句执行一次
33. 下面程序段的运行结果是( B
char c[5]={ 'a', 'b', '\0', 'c', '\0' };
printf("%s", c);
A) 'a''b'        B) ab          C) Abc          D) "abc"
34. 以下不正确的字符串赋值语句是( C
A) char *s; s="abcde";            B) char s[ ]="abcde";
C) char s[10]; s="abcde";        D) char *s="abcde";
35. 设p1、p2是指向int型一维数组的指针变量,k为int型变量,以下错误的语句是( B
A) k=*p1+*p2;    B) p2=k;        C) p1=p2;    D) k=p2-p1;
36. 下面程序的输出结果是( A
    #include <stdio.h>
    void main( )
{ char s[ ]= "ABCD";
  char *p;
  for (p=s;p<s+4;p++)
printf("%s\n", p);
}
A)    ABCD    B) A    C) D    D) ABCD
    BCD    B    C    ABC
    CD    C    B    AB
    D    D    A    A
37. 以下关于C函数的定义和调用描述正确的是( B
A) 函数的定义可以嵌套,但函数的调用不可嵌套
B) 函数的调用可以嵌套,但函数的定义不可嵌套
C) 函数的定义和调用均可以嵌套
D) 函数的定义和调用均不可嵌套
38. 以下关于变量的作用域说法正确的是( D
A) 在不同函数中不能使用相同名字变量
B) 在函数外部定义的变量只在本函数范围内有效
C) 在函数内的复合语句定义的变量在本函数内有效
D) 形式参数是局部变量
39. 以下关于变量的作用域叙述不正确的是( C
A) 在函数内部定义的变量是局部变量
B) 函数中的形式参数是局部变量
C) 全局变量的作用范围仅限于其所在的文件
D) 局部变量的作用范围仅限于本函数
40. 以下关于C函数参数说法不正确的是( B
A) 实参可以是常量、变量和表达式

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