单选题有以下程序:#include main(){ char c; do {  c = getchar();  putchar(c); }while(c!='#'); printf();}执行时如输入:abcdefg##<回车>,则输出结果是(  )。A abcdefg#B abcdefgC abcdefg##D ##

题目
单选题
有以下程序:#include main(){ char c; do {  c = getchar();  putchar(c); }while(c!='#'); printf();}执行时如输入:abcdefg##<回车>,则输出结果是(  )。
A

abcdefg#

B

abcdefg

C

abcdefg##

D

##


相似考题
更多“单选题有以下程序:#include main(){ char c; do {  c = getchar();  putchar(c); }while(c!='#'); printf();}执行时如输入:abcdefg##回车,则输出结果是(  )。A abcdefg#B abcdefgC abcdefg##D ##”相关问题
  • 第1题:

    在执行以下程序时,如果从键盘上输入ABCdef<回车>,则输出为______。include main(){char

    在执行以下程序时,如果从键盘上输入ABCdef<回车>,则输出为______。#include <stdio.h>main (){ char ch; while ((ch=getchar())!="\n") { if (ch>='A'&& ch<='B')ch=ch+32; else if (ch>='a'&& ch<='z')ch=ch-32; printf("%c",ch); } printf("\n");}

    A.ABCdef

    B.abcDEF

    C.abc

    D.DEF


    正确答案:B

  • 第2题:

    有以下程序:includeincludemain() {char c[6];int i=0;for(;j<6;c[i]=getch

    有以下程序:#include<stdio.h>#include<stdio.h>main() { char c[6]; int i=0; for(;j<6;c[i]=getchar(),i++); for(i=0;i<6;i++)putchar(c[i]); printf("\n");}如果从键盘上输入:ab<回车>c<回车>def<回车>则输出结果为 ______。

    A.a b c d e f

    B.a b c d

    C.ab c d

    D.abcdef


    正确答案:C
    解析:1.getchar():此函数的作用是从终端(或系统隐含指定的输入设备)输入一个字符。2.putchar():此函数的作用是向终端输出一个字符,也可以输出控制字符。本题在输入字符时,ab和c后面的回车符分别赋给了c[2]和c[4],所以,正确答案为C。

  • 第3题:

    当执行以下程序时,输入1234567890<回车>,则其中while循环体将执行【 】次。include main()

    当执行以下程序时,输入1234567890<回车>,则其中while循环体将执行【 】次。

    include<stdio.h>

    main()

    { char ch;

    while((ch=getchar())=='0')prinft("");

    }


    正确答案:×
    0 解析:通过getchar()函数来取得从键盘输入的数据,再判断其是否是字符‘0’,如果是,则执行一次循环,因为从键盘输入的1234567890都是整型数,不是字符.所以while循环执行的条件始终不成立,循环体执行的次数为0。

  • 第4题:

    若程序执行时的输入数据是"2473",则下述程序的输出结果是includevoid main(){int cs;w

    若程序执行时的输入数据是"2473",则下述程序的输出结果是 #include<stdio.h> void main() { int cs; while((cs=getchar())!=,'\n') {switch(cs='2') { case0 case 1:putchar(cs+4); case 2:putchar(cs+4); break; case 3:putchar(cs+3);default:putchar(cs+2);}}}

    A.668977

    B.668966

    C.6677877

    D.6688766


    正确答案:A
    解析: 本题主要考查switch语句的使用方法。switch语句的执行过程为:进入switch结构后,对条件表达式进行运算,然后从上至下去找与条件表达式值相匹配的 case,以此作为入口,执行switch结构中后面的各语句,直到遇到break语句,则跳出switch语句,如果各case都不匹配时,则执行default后面的语句。

  • 第5题:

    有以下程序: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。

  • 第6题:

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

    有以下程序: #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")} 从第一列开始输入以下数据<CR>代表一个回车符。 2743<CR> 程序的输出结果是

    A.66877

    B.668966

    C.6677877

    D.6688766


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

  • 第7题:

    有以下程序 include main() {char c1,c2,c3,c4,c5,c6; s

    有以下程序 #include <stdio.h> main() {char c1,c2,c3,c4,c5,c6; scanf("%c%c%c%c",&c1,&c2,&c3,&c4); c5=getchar(); c6=getchar(); putchar(c1); putchar(c2); printf("%c%c\n",c5,c6); } 程序运行后,若从键盘输入 (从第1列开始) 123 <回车> 45678 <回车> 则输山结果是______。

    A.1267

    B.1256

    C.1278

    D.1245


    正确答案:D
    解析:此题考核的是字符输入输出函数的应用,getchar()函数只能接收一个字符,即使输入多个字符后再按回车还是只能将第—个字符读入。scanf()和printf()是按格式输入输出的函数,当输入123回车>,scanf()分别读入字符“1”、“2”、“3”、“回车>”;接下来输入45678回车>,则getchar()读入字符“4”赋值给c5,字符“5”赋值给c6,所以输出语句输出结果为1245。

  • 第8题:

    有以下程序: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。

  • 第9题:

    单选题
    有以下程序:#include main(){ char b[3][10],c; int i; for(i=0;i<2;i++)scanf(%s,b[i]); i=0; while((c=getchar())!='')b[2][i++]=c; b[2][i] = '\0'; printf(%s%s%s,b[0],b[1],b[2]);}执行时若输入以下字符串:Peach flower is pink.<回车>则输出结果是(  )。
    A

    Peachflower is pink.

    B

    Peachfloweris pink.

    C

    Peachflowerispink.

    D

    Peach flower is pink.


    正确答案: A
    解析:
    由于用“%s”格式输出字符串时,遇到空格、制表符和回车时读取结束,因此,b[0] = "Peach",b[1] = "flower",而while循环中,用getchar函数一直读入字符直到''为止,b[2]=" is pink.",答案选择A选项。

  • 第10题:

    单选题
    有以下程序:#include main(){ int password; char *p,old_str[10]=wind; scanf(%d,&password); p = old_str; while(*p) {  printf(#%c,*p+password);  p++; }}程序运行时,从键盘输入2<回车>,输出结果是(  )。
    A

    #y#k#p#f

    B

    #wi#nd#

    C

    xj#oe

    D

    #2222#


    正确答案: C
    解析:
    首先定义了一个指针p,使其指向数组的首地址,在while语句中,如果当前指针指向地址单元的字符不等于空字符'\0',则输出'#'和指针对应地址元素的值在ASCII码加2后变换的字符常量,答案选择A选项。

  • 第11题:

    单选题
    有以下程序:#include int disp(char *str){ while(*str) putchar(*str++); putchar('#'); return *str;}main(){ printf(%d,disp(C##123));}程序运行后的输出结果是(  )。
    A

    C##123#0

    B

    C##1230

    C

    C##0

    D

    C##123#\0


    正确答案: B
    解析:
    disp函数中,存在while循环,当指针指向地址单元存储的字符不等于空字符'\0',输出此字符,否则退出循环,输出'#'。在主函数中调用disp函数时,字符串"C##123"先全部输出,当指针指向字符串最后的空字符时,退出循环,输出'#',并且再将'\0'返回输出。由于disp函数返回类型为int,所以返回'\0'的ASCII码0,答案选择A选项。

  • 第12题:

    单选题
    有以下程序: #include  mian() {  char c;  for(;(c=getchar())!= '#';) putchar(++c); } 执行时如输入为:abcdefg##<回车>,则输出结果是(  )。
    A

    abcdefg

    B

    bcdefgh$

    C

    bcdefgh$$

    D

    bcdefgh


    正确答案: A
    解析:
    for循环每次将函数getchar()的输入值赋给变量c,如果不等于#,则执行putchar(++c),即将当前变量c的ASCII码加1后,再输出改变后的变量c的值。当变量c的值等于#,则终止循环,所以输出应该是bcdefgh。答案选择D选项。

  • 第13题:

    执行下面的程序时,输入abc(其中CR代表回车),输出结果是()。includeinclude

    执行下面的程序时,输入abc<CR>(其中CR代表回车),输出结果是( )。 #include<stdio.h> #include <string.h> main() { char ch; while((cn=getchar())!='n') { switch(ch-'a') { case 0: putchar(ch+1); case 1:putchar(ch+1);break; case 2:putchar(ch+2); caSe 3:putchar(ch+2);break; } } }

    A.abc

    B.bbc

    C.abcd

    D.bbcee


    正确答案:D
    解析:当ch='a'时,ch-'a'=0,进入case0分支输出b,再进入case1分支输出b,然后结束本次循环。当ch='b'时,'b'-'a'=1,进入case1分支输出c,然后结束本次循环。当ch='c'时,'c'-'a'=2,进入case2分支输出e,再进入case3分支输出e,然后结束次循环。遇到'-n'结束循环。显示输出为bbcee。

  • 第14题:

    已知字符A的ASCII代码值为65,以下程序运行时,若从键盘输入:B33<回车>。则输出结果是______。 incl

    已知字符A的ASCII代码值为65,以下程序运行时,若从键盘输入:B33<回车>。则输出结果是______。 #include "stdio.h" main() { char a,b; a=getchar();scanf("Xd",&b); a=a-'A'+'0';b=b*2; printf("%c%c\n",a,b); }

    A.2 B

    B.1 B

    C.3 B

    D.4 B


    正确答案:B

  • 第15题:

    有以下程序:includemain(){char c[6]; int i=0; for(;i<6;c[i]=getchar(),i++); for(i

    有以下程序: #include<stdio.h> main(){ char c[6]; int i=0; for(;i<6;c[i]=getchar(),i++); for(i=O;i<6;i++)putchar(c[i]); printf("\n"); } 如果从键盘上输入: ab<回车> c<回车> def<回车> 则输出结果为_______。

    A.a

    B.a

    C.ab

    D.abcdef b b c c c d d d e f


    正确答案:C
    解析:1.getchar():此函数的作用是从终端(或系统隐含指定的输入设备)输入一个字符。2.putchar():此函数的作用是向终端输出一个字符,也可以输出控制字符。本题在输入字符时,ab和c后面的回车符分别赋给了c[2]和c[4],所以,正确答案为C。

  • 第16题:

    下列程序运行时,若输入labcedf2df<回车>输出结果为【】。 include main(){char a=0,ch; wh

    下列程序运行时,若输入labcedf2df<回车>输出结果为【 】。

    include<stdio.h>

    main()

    { char a=0,ch;

    while((ch==getchar())!='\n')

    { if(a%2!=0&&(ch>='a'&&ch<='z')) ch=ch'a'+'A';

    a++;prtchar(ch);

    }

    printf("\n");

    }


    正确答案:1AbCeDf2dF
    1AbCeDf2dF 解析:本题的执行过程是先从键盘上获得—个字符,判断是不是换行符,如果不是则继续执行循环体,再判断字符变量 a是否是偶数以及是否是小写字母,如果a不是偶数且输入的字符为小写字母,则将其转换成大写字母,接着执行a++;语句,变量a自增1,输出字符,因此本题的输出结果为1AbCeDF2dF(a相当于用来记录当前的顺序,即是第偶数个字符还是第奇数个字符)。
    字符位数:0 123456789
    输入字符:1 abcedf2df
    输出字符:1 AbCeDf2dF

  • 第17题:

    当输入为"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。本题程序段实现的功能是:从键盘上逐个的输入字符,直到遇到‘?’则结束输入,并把除‘?’以外输入的每个字符输出到屏幕上。

  • 第18题:

    有以下程序: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

  • 第19题:

    在执行以下程序时,如果从键盘上输入:ABCdef<回车>,则输出为______。 main() { char ch; while((ch

    在执行以下程序时,如果从键盘上输入:ABCdef<回车>,则输出为______。 main() { char ch; while((ch=getchar())!='\n') { if(ch>='A' && ch<='Z') ch=ch+32; else if(ch>='a'&&ch<='2')ch=ch-32; printf("%c",ch); } printf("\n"); }

    A.ABCdef

    B.abcDEF

    C.abc

    D.DEF


    正确答案:B

  • 第20题:

    有以下程序   #include      main( )  {char C1,C2:C3,C4,C5,C6; scanf("%C%C%C%C”,&Cl,&C2,&C3,&C4);      C5=getchar( );C6=getchar( );      Putchar(c1);putchar(c2);  printf(”%C%C/n”,C5,C6);      }  程序运行后,若从键盘输入(从第l列开始)      123<回车>  45678<回车>    则输出结果是()

    • A、1245
    • B、1256
    • C、1267
    • D、1278

    正确答案:A

  • 第21题:

    单选题
    有如下程序:#include void get_put(){ char ch; ch=getchar(); if(ch!='')get_put(); putchar(ch);}main(){ get_put();}程序运行时,输入ABCD<回车>,则输出结果是(  )。
    A

    DCDC

    B

    DCBA

    C

    BABA

    D

    ABCD


    正确答案: D
    解析:
    本题考查了函数的递归调用,进入get_put函数后,字符变量ch每次保存读进来的字符,如果不是换行符,则继续读取下一个字符常量,当ch保存完'D'后,下一次读取不满足if条件,函数进行输出,依次输出'D','C','B','A',答案选择B选项。

  • 第22题:

    单选题
    有以下程序 #include  char fun(char *c) {  if(*c<='Z'&&*c>='A')   *c-='A'-'a';  return *c; } main() {  char s[81],*p=s;  gets(s);  while(*p)  {   *p=fun(p);   putchar(*p);   p++;  }  printf(); } 若运行时从键盘上输入OPEN THE DOOR<回车>,程序的输出结果是(  )。
    A

    OPEN THE DOOR

    B

    OPEN tHE dOOR

    C

    open the door

    D

    Open The Door


    正确答案: D
    解析:
    在ASCII码表中,同一字母的小写编码比大写编码大32。fun函数中对大字字母执行*c-= 'A'-'a',即*c = *c-(-32),把*c从大写变成了小写。该程序的功能就是先将数组s中的大写字符转变为小写字符,然后输出s。答案选择C选项。

  • 第23题:

    单选题
    有如下程序: #include  void get_put() {  char ch;  ch=getchar();  if(ch!='')get_put();  putchar(ch); } main() {  get_put();  printf(); } 程序运行时,输入1234<回车>,则输出结果是(  )。
    A

    1234

    B

    4321

    C

    4444

    D

    1111


    正确答案: A
    解析:
    get_put为递归函数。本题程序的执行过程为:在输入1234<回车>的情况下,调用get_put函数,getchar读入1,即ch='1',if条件成立,调用get_put函数;读入2,ch='2',调用get_put函数;读入3,ch='3',调用get_put函数;读入4,ch='4',调用get_put函数;读入回车,ch='',if条件不成立,返回执行每次调用函数中if语句后的输出语句,即依次输出4321。答案选择B选项。