更多“若有说明int c;则while(c=getchar());是正”相关问题
  • 第1题:

    若有定义语句int b=2;,则表达式(b<<2)/(3||b)的值是( )。A.4B.8C.0D.2

    若有定义语句int b=2;,则表达式(b<<2)/(3||b)的值是( )。

    A.4

    B.8

    C.0

    D.2


    正确答案:B
    2的二进制数为010,移两位后的二进制数为01000,转成十制数为8,(3||2)为真即1,8/ 1=8,所以结果为8。

  • 第2题:

    若有说明int c;则while(c=getchar());是正确的C语句。()

    此题为判断题(对,错)。


    参考答案:正确

  • 第3题:

    若有如下语句includevoid main(){ int x=3: do{ X=X-2; cout<

    若有如下语句 #include<iostream.h> void main() { int x=3: do{ X=X-2; cout<<X; }while(!(--x)); } 则上面程序段

    A.输出的是1

    B.输出的是1和-2

    C.输出的是3和0

    D.是死循环


    正确答案:B
    解析:do—while语句的一般格式为do循环体语句while(表达式);,先执行循环体语句一次,再判断表达式的值,若为真则继续执行循环,否则终止循环。本题中,先执行x=x-2,即为l。判断表达式的值,!(--x)为真,x=0,继续循环。再次执行循环体语句后,x=-2,此时表达式的值为0,结束循环。

  • 第4题:

    计算机二级程序

    #include <stdio.h>

    int main()

    {

     int n=0;

     while((getchar()!='\r')||(getchar()!='\n')) n++;

     printf("%d",n);

     return 0;

    }

    哪错了?


    代码不完整

    void show(FUNC2 fun,int arg1, int*arg2)
    {
    INCp=&inc;
    int temp =p(arg1);
    fun(&temp,&arg1, arg2);
    printf("%d\n",*arg2);
    }

    mian()里面赋点值啊  没值这程序做什么啊

  • 第5题:

    有如下程序includemain(){int v1=0,v2=0; char ch; while((ch=getchar())!='') switc

    有如下程序 #include<stdio.h> main() { int v1=0,v2=0; char ch; while((ch=getchar())!='#') switch(ch) { case 'a'; casff 'h'; default:v1++; case '0';v2++; } printf("%d,%d\n",v1,v2); } 如果从键盘上输入china#<回车>,则程序运行结果为 ( )

    A.2,0

    B.5,0

    C.5,5

    D.2,5


    正确答案:C

  • 第6题:

    有以下程序includemain(){int c;while((c=getchar())!='\n'){switch(c-'2'){case 0:ca

    有以下程序 #include<stdio.h> main() { int c; while((c=getchar())!='\n') { switch(c-'2') { case 0: case 1:putchar(c+4); case 2:putchar(c+4);break; case 3:putchar(c+3); case 4:putchar(c+3);break;}} printf("\n")} 从第一列开始输入以

    A.66877

    B.668966

    C.6677877

    D.6688766


    正确答案:A
    解析: 本题主要考查了字符输入输出函数getchar和putchar的使用。getchar函数用来从标准输入设备上读入一个字符,putchar(c)函数是将字符变量c中的字符输出到标准输出设备上,并且字符可以看作整数参与运算。

  • 第7题:

    当输入为"quert?"时,下面程序的执行结果是includemain(){ char c;c=getchar();while(c

    当输入为"quert?"时,下面程序的执行结果是 #include<stdio.h> main() { char c; c=getchar(); while(c!='?') { putchar(c); c=getchar(); } }

    A.quert

    B.Rvfsu

    C.quert?

    D.rvfsu?


    正确答案:A
    解析:本题考查的是字符的输入输出函数getchar和putchar。本题程序段实现的功能是:从键盘上逐个的输入字符,直到遇到‘?’则结束输入,并把除‘?’以外输入的每个字符输出到屏幕上。

  • 第8题:

    有以下程序:includemain(){int c;while((c=getchar())!='\n'){switch(c-'3'){case 0:c

    有以下程序: #include<stdio.h> main() {int c; while((c=getchar())!='\n') {switch(c-'3') {case 0: case 1:putchar(c+4); case 2:putchar(c+4);break; case 3:putchar(c+3); case 4:putchar(c+3);break; }} printf("\n");} 从第一列开始输入数据(<CR>代表…个回车符):3845<CR>,则狴序输出结果为( )。

    A.77889

    B.77868

    C.776810

    D.7.78866e+007


    正确答案:A

  • 第9题:

    若有如下程序: main() { int n=2; do {printf("%d",n--);} while(!--n)); } 则程序运行后的输出结果是( )。

    A.2

    B.11

    C.1

    D.20


    正确答案:D
    解析:本题首先定义了一个int型变量n,并初始化为2。然后进入do-while循环,do-while循环首先执行一遍循环体,输出表达式n--的值,此时表达式n--的值是n自减之前的值2,输出一个2后,n的值变为1。然后判断do-while的循环条件!(--n)是否为真,此时表达式--n的值为n自减之后的值0,!0为真,故第二次执行循环体“printf("%d",n--);”此时n的值为0,所以执行结果为:输出一个0,n的值变为-1。此时循环条件!(--n)=!(-2)为假,程序结束。故程序运行后的输出结果是20,应该选择D。

  • 第10题:

    试题12

    有以下程序

    #include <stdio.h>

    main()

    { int c[3]={0}, k, i;

    while((k=getchar())!=’\n’)

    c[k-‘A’]++;

    for(i=0; i<3; i++) printf(“%d”, c[i]); printf(“\n”);

    }

    若程序运行时从键盘输入ABCACC<回车>, 则输出结果为______.


    正确答案:
    试题12分析
    ABCACC使得k-‘A’有两个为0,3个位2,1个为1,即c[0]自增2次,c[1]自增1次,c[3]自增3次。
    试题12答案
      213

  • 第11题:

    若有如下程序段    int j=10;   while(j=0)  j--;  则下面描述中,正确的是()。

    • A、while循环执行10次
    • B、循环是无限循环
    • C、循环体语句执行一次
    • D、循环体语句一次也不执行

    正确答案:D

  • 第12题:

    若有说明:int a[10];则对a 数组元素的正确引用是()。

    • A、a[10]
    • B、a[3.5]
    • C、a(5)
    • D、a[10-10]

    正确答案:D

  • 第13题:

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


    正确答案:
    ch!=’\n’ch>=’0’ch<=’9’

  • 第14题:

    若有说明:int a[][2]={1,2,3,4,5};则数组a第一维大小是()


    答案:3

    解析:

    本题考查二维数组的定义方式。第一维的大小由以下方法判断:①当初值的个数能被第二维的常量表达式的值除尽时,所得商数就是第一维的大小;2)当初值的个数不能被第二维的常量表达式的值除尽时,则第一维的划、:所得的商数+1。


  • 第15题:

    若变量已正确定义,下列正确的程序段是( )。

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

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

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

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


    正确答案:D
    解析: 本题考查两个知识点:①C语言用'\n'这个字符常量表示换行;②getchar函数的作用是从终端输入一个字符,当遇到换行时结束输入。

  • 第16题:

    若有如下程序: main() {int a=0,t=0; while(!a!=0) t+=a++; printf("%d,%d\n",t,A) ; } 则程序运行后的输出结果是( )

    A.0,1

    B.1,0

    C.0,0

    D.1,1


    正确答案:A

  • 第17题:

    有以下程序:includemain(){int c; while((c=getchar() )!='\n') {switch(c-'2'){ case

    有以下程序: #include <stdio.h> main() { int c; while((c=getchar() )! ='\n') { switch(c-'2') { case 0: case 1: putchar(c+4); case 2:putehar(c+4);break; case 3:putchar(c+3); default:putchar(c+2);break; } } } 运行程序,从第一列开始输入以下数据: 2473<回车>则程序的输出结果是( )。

    A.668977

    B.668966

    C.66778777

    D.6688766


    正确答案:A
    解析:本题考查switch语句。while中的表达式判断用getchar函数从键盘接收的字符是否是回车符,若不是,则执行switch多分支选择语句,根据表达式c-'2'的值进行分支选择;函数putchar是在屏幕上输出一个字符,最后的结果应当为668977。

  • 第18题:

    若有如下语句 includevoid main(){int x=3;do{x=x-2cout<

    若有如下语句 #include<iostream.h> void main() { int x=3; do{ x=x-2 cout<<x; {while (! (- -x); } 则上面程序段( )

    A.输出的是1

    B.输出的是1和一2

    C.输出的是3和0

    D.是死循环


    正确答案:B

  • 第19题:

    若变量已正确定义,以下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)。

  • 第20题:

    若有如下程序段: int n=1O; while(1)n--; printf("%d";n); 则while循环执行的次数是( )。

    A.0

    B.1

    C.10

    D.无数


    正确答案:D
    解析:本题的while循环条件为1恒为真,所以是一个无限循环。应该选择答案D。

  • 第21题:

    有以下程序:includemain(){int c;while((c=getchar())!='\n')switch(c-'2'){case 1:pu

    有以下程序: #include<stdio.h> main() { int c; while((c=getchar())!='\n') switch(c-'2') {case 1:putchar(c+4); case 2:putchar(c+4);break; case 3:putchar(c+4); case 4:putchar(c+4);break; } printf("\n"); } 输入以下数据,<CR>代表一个回车符, 2743<CR> 程序的输出结果是( )。

    A.877

    B.966

    C.778

    D.766


    正确答案:A
    解析:本题通过一个while循环向键盘缓冲区读取字符,直到读到的字符是回车键结束循环。当读到的c为'2'时,c-'2'为0, switch语句中没有case 0:所以没有输出,继续读下一个;当c为'7'时,c-'2'=5,也没有输出;当c为'4'时,c-'2'=2,执行case 2:后面的语句输出一个字符c+4='4'+4='8';当c为'3'时,c-'2'=1,执行case 1:后面的语句,连续输出两次c+4='3'+4='7'。故程序输出结果是877,应该选择A。

  • 第22题:

    若有说明:int a[3][4]; 则对a数组元素的非法引用的是()。

    • A、a[0][2*1]
    • B、a[0][4]
    • C、a[4-2][0]
    • D、a[1][3]

    正确答案:B

  • 第23题:

    若有定义:intx;以下不会产生死循环的是()

    • A、for(;(x=getchar())!=’/n’;)
    • B、while(1){x++;}
    • C、for(i=10;;i++)
    • D、for(;;x+=1)

    正确答案:A