下列程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。 Int n=0, ch; Ch=getchar( ); While( __________________ ) { if ( ________________ ) n++; c=getchar( ); }

题目

下列程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。 Int n=0, ch; Ch=getchar( ); While( __________________ ) { if ( ________________ ) n++; c=getchar( ); }


相似考题
参考答案和解析
正确答案:
ch!=’\n’ch>=’0’ch<=’9’
更多“下列程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。 Int n=0, ch; Ch=getchar ”相关问题
  • 第1题:

    若变量已正确定义,以下while循环不断输出读入的字符,当读入回车换行符时结束循环。正确的程序段是

    A.while(ch=getchar()=='\N')putchar(ch);

    B.while(ch=getchar())=='\N')putchar(ch);

    C.whle((ch=getchar())!='\N')putchaf(ch);

    D.while((ch=getchar())!='\N')putchar(ch);


    正确答案:D
    解析:换行符是一个转义字符,应该是‘\n’,而不是‘\N’。选项B)中,因为关系运算符“==”的优先级高于赋值运算符“=”,所以ch得到的值是关系运算getchar()=='\n'的结果而不是从键盘输入的字符,因而不正确,故正确答案为选项D)。

  • 第2题:

    要求通过while循环不断读入字符,当读入字母N时结束循环。若变量已正确定义,以下正确的程序段是()。

    A.while((ch=getchar())!='N' printf(“%c”,ch) ;

    B.while(ch=getchar()!='N' printf(“%c”,ch) ;

    C.while(ch=getchar())=='N' printf(“%c”,ch);

    D.while((ch=getchar())=='N' printf(“%c”,ch);


    A 解析:此题中选项B)与选项C)首先在书写上就有错误;题目要求当读人的字母为非字母'N'时才执行printf语句,依据选项D)的要求,只有当读人的字母为'N'时才执行printf句,故也错误。

  • 第3题:

    以下程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。 int n=0,c; c=getchar(); while(c!='n' ) { if(________) n++; c=getchar(); }


    c>='0' && c<='9’

  • 第4题:

    设变量已正确定义,下列不能统计出一行中输入字符个数(不包含回车符)的程序段是( )。

    A.n=0;while((ch=getchar( ))!=\n)n++;

    B.n=0;while(getchar( )!=\n)n++;

    C.for(n=0;getchar( )!=\n;n++);

    D.n=0;for(ch=getchar( );ch!=n;n++);


    正确答案:D
    D。【解析】本题中,第一条语句对变量n赋初值时为0,在for循环中,从getchar函数得到一个输入的字符,然后判断这个字符是否为回车换行符,如果不是,则变量n加1,而在程序运行时,每次输入时是一个字符串,而不是一个字符,因而for循环语句得不到正确的执行,所以不能够统计出一行中字符的个数。所以正确答案为选项D。

  • 第5题:

    要求通过while循环不断读入字符,当读入字母N时结束循环。若变量已正确定义,下列程序段正确的是 A. 【答案】 B. C. D.

    A.while((ch=getchar())!='N') printf("%c", ch);

    B.while(ch=getchar()!='N') printf("%c", ch);

    C.while(ch=getchar()=='N') printf("%c", ch);

    D.while((ch=getchar())=='N') prinf("%c", ch);


    A 解析:此题中选项B)与选项C)首先在书写上就有错误;题目要求当读人的字母为非字母'N'时才执行printf语句,依据选项D)的要求,只有当读人的字母为'N'时才执行printf句,故也错误。