二、基本输入输出语句
(一)选择题
1 逻辑运算符两侧运算对象三数据类型       
A.只能是01                    B.只能是0或非0正数
C.只能是整型或字符型数据            D.可以是任何类型的数据
2 设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)n的值为       
    A 1        B 2        C 3        D 4
3 以下程序的运行结果是       
main()
{    int a,b,d=241;
    a=d/100%9;
    b=(-1)&&(-1);
    printf(%d,%d,a,b);
}
A 6,1      B 2,1      C 6,0      D 2,0
4 若运行时给变量x输入12,则以下程序的运行结果是       
main()
{ int x,y;
        scanf(%d,&x);
      y=x>12 ? x+10 : x-12;
printf(%d\n,y);
}
A 4      B 3        C2      D 1
5.指出下面不正确的赋值语句是       
   Aa++      B.a==   C.a+=b;  D.a=1,b=2
6.C语言中,错误的语句是       
    A.a=b=c;
    B.;
    C.break
    D.b=3*5,a*=4;
7.以下所列语句中,合法的语句是       
    A.a=1,b=2
    B.++a;
    C.a=a+1=5;
    D.y=int(a);
8.若x,y均为int型数据,zdouble型数据,则以下的scanf函数调用语句中不合法的是           
      Ascanf(%d%lx,%le,&x,&y,&z);      Bscanf(%2d*%d%lf,&x,&y,&z);
    Cscanf(%x%*d%o,&x,&y);            Dscanf(%x%o,%6.2f,&x,&y,&z);
9. x, y均为int型变量且有值,要输出x, y的值,正确的输出函数调是       
A. printf("%d%d",&x,&y);            B. printf("%f%f",x,y);
C. printf("%f%d",x,y);            D. printf("%d%d",x,y);
10. xint型变量,且值为2345,不正确的输出函数调用       
A. printf("%d",x);              B. printf("%3d",x);
C. printf("%c",x) ;              D. printf("%s",x);
11. mfloat型变量,则执行以下语句后的输出为       
m=1234.123;printf(%-8.3f\n,m);
printf(%10.3f\n,m);
A.1234.123                    B. 1234.123
1234.123                    1234.123 
C.1234.123                    D. 1234.123
001234.123                  001234.123
12 putchar函数可以向终端输出一个       
A. 整型变量表达式          B.实型变量值
C. 字符串                  D. 字符或字符型变量值
13 printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式        ;如果字符串长度小于5,则输出按方式       
A. 从左起输出该字符串,右补空格   
B. 按原字符长从左向右全部输出
C. 右对齐输出该字符串,左补空格   
D. 输出错误信息
14 阅读以下程序,当输入数据的形式为:251310<CR>(注:<CR>表示回车),则正确的输出结果为       
#include  <stdio.h>
main()
    {    int x,y,z;
        scanf(%d%d%d,&x,&y,&z);
        printf(x+y+z=%d\n,x+y+z);
    }
A.x+y+z=48      B.x+y+z=35      C.x+z=35    D.不确定值
15 根据下面的程序及数据的输入和输出形式,程序中输入语句的正确形式应该为       
main()
    {    char ch1,ch2,ch3;
        输入语句
        printf(%c%c%c,ch1,ch2,ch3);
    }
    输出形式:A B C
    输入形式:printf函数打印字符串A B
A. scanf(%c%c%c,&ch1,&ch2,&ch3);
B. scanf(%c,%c,%c,&ch1,&ch2,&ch3);
C. scanf(%c %c %c,&ch1,&ch2,&ch3);
D. scanf(%c%c,&ch1,&ch2,&ch3);
16.已知ch是字符型变量,下面正确的赋值语句是       
A.ch=a+b;  B.ch=\0;
C.ch=7+9;  D.ch=5+9;
17. C语言的程序一行写不下时,可以       
A.用逗号换行                      B.用分号换行
C.在任意一空格处换行              D.用回车符换行
18. putchar ( )函数可以向终端输出一个       
A.整型变量表达式值      B.实型变量值
C.字符串                D.字符或字符型变量值
19. 执行下列程序片段时输出结果是       
unsigned int a=65535;
printf(%d,a);
A.65535    B.1    C.32767      D.1
20. 执行下列程序片段时输出结果是       
float x=-1023.012
printf(\n%8.3f,,x);
printf(%10.3f,x);
A.1023.012, -1023.012          B.-1023.012,-1023.012
C.1023.012,-1023.012          D.-1023.012, -1023.012
21. 已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为1020AB,当从第一列开始输入数据时,正确的数据输入方式是       
int a1,a2; char c1,c2;
scanf(%d%c%c,&a1,&a2,&c1,&c2);
A.10A 20B<CR>                B.10 A 20 B<CR>
C.10A20B<CR>                C.10A20 B<CR>
22.对于下述语句,若将10赋给变量k1k3,将20赋给变量k2k4,则应按 方式输入数据       
        int k1,k2,k3,k4;
        scanf(%d%d,&k1,&k2);
        scanf(%d,%d,&k3,&k4);
A.1020<CR>    B.10 20<CR>      C.10,20 <CR>    D.10 20<CR> 
  1020<CR>        10 20<CR>        10,20<CR>      10,20<CR>
23.执行下列程序片段时输出结果是       
        int x=13,y=5;
        printf(%d,x%=(y/=2));
A.3    B.2    C.1        D.0
24.下列程序的输出结果是       
#include  <stdio.h>
main ( )
      { int x=023;
printf(%d,--x);
      }
A.17      B.18      C.23    D.24
25.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,AB,当从第一列开始输入数据时,正确的输入方式是       
        int a1,a2; char c1,c2;
        scanf(%d%d,&a1,&a2);
        scanf(%c%c,&c1,&c2);
A.1020AB<CR>        B.10 20<CR>
                           AB<CR>
C.10 20 AB<CR>      D.10 20AB<CR>
26.执行下列程序片段时输出结果是       
        int x=5,y;
        y=2+(x+=x++,x+8,++x);
        printf(%d,y);
A.13    B.14    C.15    D.16
27.若定义xdouble型变量,则能正确输入x值的语句是       
A.scanf(%f,x);          B.scanf(%f,&x);
C.scanf(%lf,&x);        D.scanf(%5.1f,&x);
28.若运行时输入:12345678<CR>,则下列程序运行结果为       
#include  <stdio.h>