C题库新
C语言(基础知识)单元练习一
1.能正确表示a和b同时为正或同时为负的逻辑表达式是______。
A. (a>=0‖b>=0)&&(a<0‖b<0)
B. (a>=0&&b>=0)&&(a<0&&b<0)
C. (a+b>0)&&(a+b<=0)
D. a*b>0
D
2.一个C语言程序的执行是从______。
  A. main函数开始,直到main函数结束
  B.第一个函数开始,直到最后一个函数结束
  C.第一个语句开始,直到最后一个语句结束
  D. main函数开始,直到最后一个函数结束
A
3.可用作用户标识符的一组标识符是______。
A. void      B. a3_b3      C. For      D. 2a
  define          _xyz            -abc            DO
  WORD            IF              Case            sigeof
B
4.能正确表示a、b不能同时为零的逻辑表达式是______。
A. a==0&&b!=0||a!=0&&b==0
B. (a==0)||(b==0)
C. (a!=0)||(b!=0)
D. a*b==0
A
5.已知各变量的类型说明如下: int i=8,k,a,b; unsigned long w=5; double x=1.42,y=5.2; 则以下符合C语言语法的表达式是______。
A. a+=a-=(b=4)*(a=3)    B. a=a*3=2
C. x%(-3)        D. y=float(i)
A
6.若k为int型变量,则以下语句______。 k=8567; printf("|%-06d|\n",k);
A.输出格式描述不合法    B.输出为|008567|
C.输出为|8567  |    D.输出为|-08567|
C
7.正确的C语言自定义标识符是______。
A.file_bak        B.abc(10)      C.continue      D.class+3
A
8.设int x=8,y,z;执行y=z=x++;x=y=z;后,变量x的值是______。
A. 0      B. 1      C. 8      D. 9
C
9.用getchar函数可以从键盘读入一个______。
A.整型变量表达式值    B.实型变量值
C.字符串        D.字符或字符型变量值
D
10.下面四个选项中,均是非法常量的是______。
  A. 'ads'      B. '\\'        C. -0x18        D. 0xabc
    -0fff        '\01'          01177          '\0'
    '\0a'        12,456          0xf            "a"
A
11.能正确表示逻辑关系:"a≥10或a≤0"的C语言表达式是______。
A. a>=10 or a<=0        B. a>=0|a<=10     
C. a>=10 &&a<=0            D. a>=10‖a<=0
D
12.以下选项中,与k=n++完全等价的表达式是______。
  A. k=n,n=n+1    B. n=n+1,k=n    C. k=++n    D. k+=n+1
A
13.下面四个选项中,均是合法浮点数的是______。
A. +1e+1          B. -.60          C. 123e          D. -e3
  5e-9.4          12e-4          1.2e-.4        .8e-4
  03e2            -8e5            +2e-1          5.e-0
B
14.请从以下表达式中选出a为偶数时值为0的表达式______。
A. a%2==0        B. !a%2!=0        C. a/2*2-2==0      D. a%2
D
15.在scanf函数语句中,地址表列由______组成。
A.表达式    B.变量    C.常量    D.地址项
D
16.以下4组用户定义标识符中,全部合法的一组是______。
A. _main          B. If            C. txt            D. int
  enclude        -max            REAL            k_2
  sin            turbo          3COM            _001
A
17.在C语言中,char型数据在内存中的存储形式是______。
  A. 补码    B. 反码    C. 原码    D. ASCII码
D
18.以下程序
#include <stdio.h>
void main()
{  int a; char c=10;    float f=100.0; double x;
a=f/=c*=(x=6.5);    printf("%d %d %3.1f %3.1f\n",a,c,f,x);  }
运行后的输出结果是______。
A. 1 65 1 6.5    B. 1 65 1.5 6.5      C. 1 65 1.0 6.5    D. 2 65 1.5 6.5
B
19.a&&b&&c逻辑表达式中,当a为假时将不再计算b和c的值了。
T
20.C语言规定,可以在定义变量时,同时使变量初始化。
T
21.凡是表达式都有一个值。
T
22.或运算||参与运算的两个量都为真时,结果才为真。
F
23.如果i的原值为3,则j = ++ i,j的值为3。
关于printf函数正确的是F
24.如果要把常量327存入变量a中,a可以定义成float类型。
T
25.字符型变量用来存放字符常量,注意只能放2个字符。
F
26.若变量已正确定义,以下程序段的输出结果是5.169000。
    x=5.16894; printf("%f\n",(int)(x*1000+0.5)/(float)1000);
T
27.以下程序的运行结果是(a=%2,b=%5)。
#include <stdio.h>
main() {int a=2,b=5; printf("a=%%d,b=%%d\n",a,b); }
F
28.在printf函数中,格式字符f的意义是:以小数形式输出单精度实数。
F
29.若int x=3; printf("%d",&x);则系统不会报错,会输出x的地址。
T
30.若在定义语句double a,b;之后,因为变量a,b已正确定义,因此立刻执行表达式a=b+9.381;是正确的。
F
31.在scanf("%4d",&i);语句中,输入123456789,只把123456赋予变量i 。 
F
32.设int a=2,b,c;则执行c=b=a--;语句后,c的结果是2。
T
33.一般一个字符变量在内存中占一个字节。
T
34.在C语言中,++(i+1)是一个合法的算术表达式。
F
35.若有以下定义:int a=2,b=3; float x=3.5,y=2.5; 则下面表达式的值为3.500000。 (float)(a+b)/2+(int)x%(int)y
T
36.在printf函数中,输出表列的各输出项之间可用冒号分隔。
F
37.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3'后,c2中的值为D。
T
38.printf函数是一个标准库函数,它的函数原型在头文件"stdio.h"中。
T
39.char c='a'; printf("%d",c);的输出结果是___________。
97
40.字符串''w\x53\\\np\103q''的长度是___________。
7
41.设有如下定义: int x=10,y=3,z ; 则语句 printf("%d\n",z=(x%y,x/y)); 的输出结果是___________。
3
42.C语言的字符输出函数是___________。
putchar()
43.以下程序
#include<stdio.h>
void main()
{ char a;  a='H'-'A'+'0';  printf("%c\n",a); }执行后输出结果是_________。
7
44.以下程序
  #include <stdio.h>
void main( )
{  int x=102,y=012;
    printf("%2d,%2d\n",x,y);}执行后输出结果是___________。
102,10
45.有以下语句段: int  n1=10,n2=20; printf("___________",n1.n2);
要求按以下格式输出n1和n2的值,每个输出行从第一列开始,请填空。
n1=10
n2=20
n1=%d\nn2=%d
46.使用getchar函数前必须包含头文件___________。
stdio.h
47.有以下程序
  #include <stdio.h>
void main()
{  char a,b,c,d;
scanf("%c,%c,%d,%d",&a,&b,&c,&d);
printf("%c,%c,%c,%c\n",a,b,c,d);  }
若运行时从键盘上输入:6,5,65,66<回车>。则输出结果是___________。
  6,5,A,B
48.说明语句char  s='\t';使s包含了___________个字符。
1
49.若k为 int 整型变量且赋值7,x为double型变量且赋值8.4,赋值表达式x = k的运算结果是___________。
7.000000
50.以下程序段的输出结果是___________。
int a=1234; printf("%2d\n",a);
1234
第2套
1.scanf函数被称为______输入函数。A.字符    B.整数    C.格式    D.浮点  C
2.下面正确的字符常量是______。  A. "c"    B. '\\''    C. 'W'      D. '      C