您现在的位置: 中国男护士网 >> 考试频道 >> 计算机等级 >> 二级辅导 >> C语言 >> 模拟题 >> 正文    
  二级C语言教程章节测试3.顺序结构:输入与输出 【注册男护士专用博客】          

二级C语言教程章节测试3.顺序结构:输入与输出

www.nanhushi.com     佚名   不详 

 第三部分 顺序结构:输入与输出

一、选择题

    (1)有以下程序
    main()
    {   int  m,n,p;
       scanf("m=%dn=%dp=%d",&m,&n,&p);
       printf("%d%d%d\n",m,n,p);
    }
    若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是 
    A)m=123n=456p=789
    B)m=123  n=456  p=789
    C)m=123,n=456,p=789
    D)123   456   789

    (2) 有以下程序
    main()
    { int m=0256,n=256;
      printf("%o %o\n",mn,n);
    }
    程序运行后的输出结果是
    A) 0256 0400  B) 0256 256  C) 256 400   D) 400 400

    (3) 有以下程序
    main()
    { int a=666,b=888;
      printf("%d\n",a,b);
    }
    程序运行后的输出结果是
    A) 错误信息  B) 666    C) 888    D) 666,888

    (4) 有以下程序
    main( )
    {
     int x=102,y=012;
     printf(“%2d,%2d\n”,x,y);
    } 
    执行后输出结果是
    A) 10,01    B) 02,12    C) 102,10    D) 02,10
     (5) 有以下程序
    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

    (6) 有定义语句:int  x,y;, 若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是
    A) 11  12<回车>            B) 11,12<回车>
    C) 11,12<回车>           D) 11,<回车>
    12<回车>

    (7) 设有如下程序段:
    int  x=2002,y=2003;
    printf("%d\n",(x,y));
    则以下叙述中正确的是
    A) 输出语句中格式说明符的个数少于输出项的个数,不能正确输出
    B) 运行时产生出错信息
    C) 输出值为2002
    D) 输出值为2003

    (8)若有以下程序段(n所赋的是八进制数)
    int m=32767,n=032767
    printf("%d,%o/n",m,n);
    执行后输出结果是
    A) 32767,32767      B) 32767,032767
    C) 32767,77777      D) 32767,077777

    (9)若有以下程序段
    int m=0xabc,n=0xabc;
    m-=n;
    printf("%X\n",m);
    执行后输出结果是
    A) 0X0    B) 0x0    C) 0   D) 0XABC

    (10) 已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是
    A) scanf(“%2d%2d%2d”,&i,&j,&k);
    B) scanf(“%d  %d  %d”,&i,&j,&k);
    C) scanf(“%d,%d,%d”,&i,&j,&k);
    D) scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);


    (11) 设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是
    A)printf(“x=%d\n”,x);  B) printf(“x=%1d\n”,x);
    C)printf(“x=%8dL\n”,x);  D)printf(“x=%LD\n”,x);

    (12) 以下程序段的输出结果是
    int  a=1234;
    printf("%2d\n",a);
    A) 12          B) 34        C) 1234       D) 提示出错、无结果

    (13) x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是
    A) INPUT  x、y、z;    B) scanf(“%d%d%d”,&x,&y,&z);
    C) scanf(“%d%d%d”,x,y,z);  D) read(“%d%d%d”,&x,&y,&z);

    (14) 若变量已正确说明为float类型,要通过语句scanf(“%f  %f  %f ”,&a,&b,&c);给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是:
    A) 10<回车>       B) 10.0,22.0,33.0<回车>
      22<回车>
      33<回车>
    C) 10.0<回车>      D) 10  22<回车>
      22.0  33.0<回车>        33<回车>

    (15) 有如下程序
    main0
    {    int     y=3,x=3,z=1;
    printf(“%d   %d\n”,(++x,y++),z+2);
    }
    运行该程序的输出结果是
    A) 3  4            B) 4  2            C) 4  3           D) 3  3

    (16) 下列程序执行后的输出结果是(小数点后只写一位)
         A) 6  6  6.0  6.0                 B) 6  6  6.7  6.7
         C) 6  6  6.0  6.7                 D) 6  6  6.7  6.0
         main()
         { double d;  float f;  ling l;  int i;
           i=f=1=d=20/3;
           printf("%d %ld %f %f \n", i,l,f,d);
         }

    (17) 以下说法中正确的是
       A) #define和printf都是C语句       B) #define是C语句,而printf不是
       C) printf是C语句,但#define不是    D) #define和printf都不是C语句

    (18) 以下程序的输出结果是
       A) 17,021,0x11       B) 17,17,17
       B) 17,0x11,021       D) 17,21,11
         main(  )
         {  int   k=17;
            printf("%d,%o,%x \n",k,k,k);
         }

    (19) 以下叙述中正确的是
    A) 输入项可以是一个实型常量,如:
    scakf("%f",3.5);
    B) 只有格式控制,没有输入项,也能正确输入数据到内存,例如:
    scakf("a=%d,b=%d");
    C) 当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:
    scakf("%4.2f",&f);
    D) 当输入数据时,必须指明变量地址,例如:
    scakf("%f",&f);

    (20) 若有以下定义和语句:
    int u=010,v=0x10,w=10;
    printf("%d,%d,%d\n,u,v,w);
    则输出结果是:
    A) 8,16,10        B) 10,10,10     C) 8,8,10        D) 8,10,10


    (21) 请读程序片段:
    int i=65536; printf("%d\n",i);
    上面程序片段的输出结果是
    A) 65536      B) 0    C) 有语法错误,无输出结果   D) -1

    (22) 若x和y都是int型变量,x=100,y=200,且有下面的程序片段:
    printf("%d",(x,y));
    上面程序片段的输出结果是
    A) 200         B) 100  C) 100 200   D) 输出格式符不够,输出不确定的值

    (23) 请读程序:
    #include<stdio.h>
    main()
    { int a; float b, c;
    scanf("%2d%3f%4f",&a,&b,&c);
    printf("\na=%d, b=%f, c=%f\n", a, b, c);
    }
    若运行时从键盘上输入9876543210<CR>(<CR>表示回车),则上面程序的输出结果是
    A) a=98, b=765, c=4321          B) a=10, b=432, c=8765
    C) a=98, b=765.000000, c=4321.000000 D) a=98, b=765.0, c=4321.0

    (24)以下程序的输出结果是 【24】 。
    # include <stdio.h>
    # include <math..h>
    main()
    {  int a=1,b=4,c=2;
       float  x=10..5 , y=4.0 , z;
       z=(a+b)/c+sqrt((double)y)*1.2/c+x;
       pritnf("%f\n",z);   }
    A) 14.000000   B) 015.400000     C) 13.700000     D) 14.900000

    (25)以下程序的输出结果是 【25】 。
    # include <stdio.h>
    main()
    {  int a=2,c=5;
       printf("a=%%d,b=%%d\n",a,c);   }
    A) a=%2,b=%5   B) a=2,b=5    C) a=%%d,b=%%d    D) a=%d,b=%d

    (26) 执行下面程序中的输出语句,a的值是
    A) 65            B) 20           C) 15            D) 10
    main()
    { int a;
    printf("%d\n",(a=3*5,a*4,a+5));}

二、填空题:
    (1)以下程序运行后的输出结果是  【1】  。
     main()  { int  x=0210;    printf("%X\n",x);  }
    (2)以下程序运行后的输出结果是  【2】   。
     main()
     { char  c;        int  n=100;
       float  f=10;    double  x;
       x=f*=n/=(c=50);
       printf("%d  %f\n",n,x);
     }
    (3)以下程序运行时若从键盘输入:10  20  30<回车>。输出结果是   .
    #include  <stdio.h>
    main()
    {     int  i=0,j=0,k=0;
          scanf("%d%*d%d",&i,&j,&k);
          printf("%d%d%d\n",i,j,k);
    }

    (4) 以下程序段的输出结果是 【4】  。
    int i=9;
    printf("%o\n",i);

    (5) 以下程序运行后的输出结果是 【5】  。
    main()
    { int a,b,c;
      a=25;
      b=025;
      c=0x25;
      printf("%d  %d  %d\n",a,b,c);
    }

    (6) 有以下语句段
    int  n1=10,n2=20;
    printf(“ 【6】 ”,n1.n2); 
    要求按以下格式输出n1和n2的值,每个输出行从第一列开始,请填空。
    n1=10
    n2=20

    (7)若有语句
    int i=-19,j=i%4;
     printf("%d\n",j);
    则输出结果是 【7】 。

    (8)若有程序
    main()
    { int i,j;
     scanf("i=%d,j=%d";&i,&j);
     printf("i=%d,j=%d\n",i,j);
    }
    要求给i赋10,给j赋20,则应该从键盘输入 【8】 。

    (9) 以下程序的输出结果是【9】 。
    main() 
    {   int  a=177;
    printf("%o\n",a);
    }

    (10) 以下程序的输出结果是【10】 。
     main()
    { int  a=0
    a+=(a=8);
    printf("%d\n",a);
    } 

    (11)以下程序的输出结果是 【11】   
    main()
    {  int  a=1,  b=2;
       a=a+b; b=a-b; a=a-b;
       printf(“%d,%d\n”, a, b );
    }

    (12)下列程序的输出结果是16.00,请填空。。
    main()
    {  int  a=9,  b=2;
       float  x=  【12】  , y=1.1,z;
       z=a/2+b*x/y+1/2;
       printf(“%5.2f\n”, z );
    }

    (13) 以下程序的输出结果是 [13] 。
    main()
    {     unsigned short  a=65536;    int  b;
    printf(“%d\n”,b=a);
    }

    (14) 若想通过以下输入语句使a=5.0,b=4,c=3,则输入数据的形式应该是 【14】  。
      
               int   b,c;      float a;
               scanf("%f,%d,c=%d",&a,&b,&c);

    (15) 若想通过以下输入语句给a赋于1,给b赋于2,则输入数据的形式应该是 【15】 。
    int a,b;
    scanf("a=%b,b=%d,&a,&b);


    答案:
    一、选择题
    1) A 2) C 3) B 4) C 5) B 6) A 7) D 8) A 9) C 10) C
    11) B 12) C 13) B 14) B 15) D 16) A 17) D 18) D 19) D 20) A
    21) B 22) A 23) C 24) C 25) D 26) C 27)  28)  29)  30) 
    二、填空题

    (1) 88

    (2) 2 20.000000

    (3) 10   30   0

    (4) 11

    (5) 25 21 37

    (6)  n1=%d\nn2=%d

    (7) -3

    (8) i=10,j=20

    (9) 261

    (10) 16

    (11) 2,1

    (12) 6.6

    (13) 0

    (14) 5.0,4,c=3

    (15) a=1,b=2

 

 

文章录入:杜斌    责任编辑:杜斌 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     

    联 系 信 息
    QQ:88236621
    电话:15853773350
    E-Mail:malenurse@163.com
    免费发布招聘信息
    做中国最专业男护士门户网站
    最 新 热 门
    最 新 推 荐
    相 关 文 章
    没有相关文章
    专 题 栏 目