单选题若有以下程序#include main(){ char c1, c2; c1='C'+'8'-'3'; c2='9'-'0'; printf(%c %d,c1,c2);}则程序的输出结果是(  )。A H 9B 表达式不合法输出无定值C F'9'D H'9'

题目
单选题
若有以下程序#include main(){ char c1, c2; c1='C'+'8'-'3'; c2='9'-'0'; printf(%c %d,c1,c2);}则程序的输出结果是(  )。
A

H 9

B

表达式不合法输出无定值

C

F'9'

D

H'9'


相似考题
更多“若有以下程序#include <stdio.h>main(){ char c1, c2; c1='C'+'8'-'3';”相关问题
  • 第1题:

    已知在ASCⅡ代码中,字母A的序号为65,以下程序的输出结果是______。includemain(){char c

    已知在ASCⅡ代码中,字母A的序号为65,以下程序的输出结果是______。 #include<stdio.h> main() { char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); }

    A.65,90

    B.因输出格式不合法,输出错误信息

    C.A,Y

    D.65,89


    正确答案:D
    解析:在C语言中,将一字符常量赋值给一个变量,是把此字符常量所对应的ASCII码值赋值给此字符变量,所以一个字符既可作为字符形式输出,也可以整数形式输出。

  • 第2题:

    有以下程序: include point ( char * p) {p + = 3; }main( ) char b[4] = {'a','b','c

    有以下程序: #include <stdio.h>point ( char * p) { p + = 3; }main( ) char b[4] = {'a','b','c','d'} , *p=b; point(p); printf( "% c \n" , * p);

    A.a

    B.b

    C.c

    D.d


    正确答案:A
    解析:C函数的参数传递方式采用按值传递,不能通过调用函数改变形参指针本身的值,只能改变指针所指变量的值。调用point函数时,将实参指针p的值(b数组的首地址)传给了形参指针P,P+=3运算使形参指针指向字符d,但并不能改变main函数中p的值,所以本题正确答案应该是选项A)。

  • 第3题:

    有以下程序: includemain(){char c1='1',c2='2';c1=getchar();c2=getchar();putchar(c

    有以下程序: # include<stdio.h> main() {char c1='1',c2='2'; c1=getchar();c2=getchar();putchar(c1);putchar (c2); } 当运行时输入:a<回车>后,以下叙述正确的是 ______。

    A.变量c1被赋予字符a,c2被赋予回车符

    B.程序将等待用户输入2个字符

    C.变量c1被赋予字符a,c2中仍是原有字符2

    D.变量c1被赋予字符a,c2中将无确定值


    正确答案:A
    解析:getchar函数读入字符时,空格、回车符都作为字符读入,因此A正确。

  • 第4题:

    有以下程序 include main() {char c1,c2;scanf("%c",*c1);while(c1<65||c1>90)scanf("%

    有以下程序

    include<stdio.h>

    main()

    { char c1,c2;

    scanf("%c",*c1);

    while(c1<65||c1>90) scanf("%c",&c1);

    c2=c1+32;

    printf("%c,%c\n",c1,c2);

    }

    程序运行输入6回车后,自否输出结果、结束运行(请回答能或不能)【 】。


    正确答案:不能
    不能 解析:本题原意想把大与英文字母转换成小写字母,但由于输入数据时不正确致使循环无限制地进行下去,应该输入大写英文字母,因此,本题无输出结果,不能结束运行。

  • 第5题:

    有下列程序:includemain(){char c1,c2,c3,c4,c5,c6;scanf("%c%c%c%c",&c1,&c2

    有下列程序: #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<CR> 45678<CR> 则输出结果是(

    A.1267

    B.1256

    C.1278

    D.1245


    正确答案:D
    解析: 当用scanf函数从键盘输入数据时,每行数据的末尾按下回车键(Enter键)之前,可以任意修改。但按下回车键putchar(c1) (Enter键)之后,scanf函数即接受了这一行数据,不能再回去修改。所以本题中,当输入123CR>时,变量c1、c2、c3的值分别为1、2、3,当输入45678CR>时,变量c5、c6的值4和5。所以用输出函数putchar(c1)输出1,putchar(c2)输出2,printf("%c%c\n",c5,c6)输出45。所以选项D)为正确答案。

  • 第6题:

    有以下程序:includemain(){char c1,c2,c3,c4,c5,c6;scanf("%c%c%c%c",&c1,&c2

    有以下程序: #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
    解析: 格式输入函数一般形式为:scanf(格式控制,地址表列),该函数段执行scanf函数后c1='1'、c2='2'、c3='3'、c4='\n',getchar为字符输入函数,函数的值就是从输入设备得到的字符。

  • 第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题:

    已知在ASCII代码中,字母A的序号为65,下列程序的输出结果是______。include main(){char

    已知在ASCII代码中,字母A的序号为65,下列程序的输出结果是______。#include <stdio.h>main (){ char c1='A',c2='Y'; printf("%d,%d\n",c1,c2);}

    A.因输出格式不合法,输出错误信息

    B.65,90

    C.'A','Y'

    D.65,89


    正确答案:D

  • 第9题:

    有以下程序:includevoid fun(char *a, char *b){ a=b;(*a)++;}main(){char c1='A',c2=

    有以下程序: #include <stdio.h> void fun(char *a, char *b) { a=b; (*a)++;} main() { char c1='A',c2='a',*p1,*p2; p1=&c1; P2=&c2; fun(p1,p2); printf("%c%c\n",c1,c2); } 程序运行后的输出结果是( )。

    A.Ab

    B.aa

    C.Aa

    D.Bb


    正确答案:A
    解析:本题中fun函数的形参是两个指向字符型数据的指针,其功能是把b赋给a,然后将a所指存储单元里的变量值加1。在main函数中,p1里存放的是c1的地址,p2里存放的是c2的地址,经函数调用fun(p1,P2)后,p2的值赋给了p1,使p1和p2都指向了c2,而(*a)++又使'a'的值加1变成了'b',所以此时c2的值为'b',而c1的值没变,仍为'A'。程序改变的是p1的地址和c2的值。

  • 第10题:

    数字字符'0'的ASCII值为48,若有以下程序:include main( )char a='1',b ='2';printf( "

    数字字符'0'的ASCII值为48,若有以下程序: #include <stdio.h> main( ) char a='1',b ='2'; printf( "% c,",b + + ); printf(" % d \n" ,b - a); } 程序运行后的输出结果是( )。

    A.3,2

    B.50,2

    C.2,2

    D.2,50


    正确答案:C
    解析:变量a,b定义为字符型,执行printf("%c,"b++);时,首先输出字符变量b的值'2'和逗号,然后b的值加1,b的值变成'3';再执行printf("%d\n",b-a);输出'3'-'1',即数字2。所以程序运行后的输出结果为选项C)。

  • 第11题:

    有以下程序 #include main() { char c1=’1’,c2=’2’; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2); } 当运行时输入:a<回车>后,以下叙述正确的是()

    • A、变量C1被赋予字符a,c2被赋予回车符
    • B、程序将等待用户输入第2个字符
    • C、变量c1被赋予字符a,c2中仍是原有字符2
    • D、变量c1被赋予字符a,c2中将无确定值

    正确答案:A

  • 第12题:

    单选题
    有以下程序 #include main() { char c1=’1’,c2=’2’; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2); } 当运行时输入:a后,以下叙述正确的是()
    A

    变量C1被赋予字符a,c2被赋予回车符

    B

    程序将等待用户输入第2个字符

    C

    变量c1被赋予字符a,c2中仍是原有字符2

    D

    变量c1被赋予字符a,c2中将无确定值


    正确答案: B
    解析: 暂无解析

  • 第13题:

    有以下程序:include main(){ charc1='1',c2='2'; c1=getchar(); c2=getchar(); putcha

    有以下程序: #include <stdio.h> main() { char c1='1',c2='2'; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2); } 当运行时输入:a<回车>后,以下叙述正确的是( )。

    A.变量c1被赋予字符a,c2被赋予回车符

    B.程序将等待用户输入第2个字符

    C.变量c1被赋予字符a,c2中仍是原有字符2

    D.变量c1被赋予字符a,c2中将无确定值


    正确答案:A
    解析:getchar()函数执行时将从键盘缓冲区中读取用户的输入,而不管输入的是否可打印字符。所以当输入a回车>后,键盘缓冲区被输入的实际上是两个字符:'a'和'\n'。故选项A的说法是正确的。

  • 第14题:

    有以下程序

    void fun(char *a, char *b)

    { a=b; (*a)++; }

    main()

    { char c1='A',c2='a',*p1,*p2;

    p1=&c1; p2=&c2; fun(p1,p2);

    printf("%c%c\n",c1,c2);

    }

    程序运行后的输出结果是

    A.Ab

    B.aa

    C.Aa

    D.Bb


    正确答案:A
    解析:本题考查了地址的调用。在子函数fun()中,a,b分别存储的是存放“A”,“a,,两个字符所在存储单元的地址。但在子函数中直接改变了指针变量a所指存储单元(a=b,即b所指单元)中的值,使其变为“b”,故子函数执行结束时,c1的值不变,c2的值改变。

  • 第15题:

    有以下程序: include main() {char c1='1',c2='2'; c1=getchar();c2

    有以下程序: #include <stdio.h> main() {char c1='1',c2='2'; c1=getchar();c2=getchar();putchar(c1);putchar(c2); } 当运行时输入a<回车>后,以下叙述正确的是 ______。

    A.变量c1被赋予字符a,c2被赋予回车符

    B.程序将等待用户输入第2个字符

    C.变量c1被赋予字符a,c2中仍是原有字符2

    D.变量c1被赋予字符a,c2中将无确定值


    正确答案:A
    解析:函数getchar()的作用是从终端(或系统隐含指定的输入设备)输入一个字符,且只能接受一个字符(回车符也算是一个字符)。故本题中变量c1被赋予字符a,c2被赋予回车符。

  • 第16题:

    有以下程序 include main() { char a=4; printf("%d/n,a=a

    有以下程序 #include <stdio.h> main() { char a=4; printf("%d/n,a=a<<1); } 程序的运行结果是______。

    A.40

    B.16

    C.8

    D.4


    正确答案:C
    解析:“”是按位左移运算符,左移一位相当于该数乘以2,左移两位相当于该数乘以2的2次方,所以本题相当于将4乘以2,结果为8。

  • 第17题:

    有下列程序:includemain(){ char c1,c2,c3,c4,c5,c6;scanf("%c%c%c%c",&c1,&c

    有下列程序:#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<CR>45678<CR>则输出结果是( )。

    A.1267

    B.1256

    C.1278

    D.1245


    正确答案:D
    解析:当用scanf函数从键盘输入数据时,每行数据的末尾按下回车键(Enter键)之前,可以任意修改。但按下回车键putchar(c1)(Enter键)之后,seanf函数即接受了这一行数据,不能再回去修改。所以本题中,当输入123CR>时,变量c1、c2、c3的值分别为1、2、 3,当输入45678CR>时,变量c5、c6的值4和5。所以用输出函数putchar(c1)输出1,putchar(c2)输出2,printf("%c%c\n",c5,c6)输出45。所以选项D)为正确答案。

  • 第18题:

    已知大写字母F的ASCII码为70,以下程序的运行结果为()includemain( ){char c1='F',c2='

    已知大写字母F的ASCII码为70,以下程序的运行结果为 ( ) #include<stdio.h> main( ) { char c1='F',c2='p'; printf("%d,%d\n",c1,c2); }

    A.70,80

    B.70,81

    C.70,82

    D.70,83


    正确答案:A

  • 第19题:

    有以下程序includemain(){charc1='1',c2='2';c1=getchar();c2=getchar();putchar(c1)

    有以下程序#include<stdio. h>main(){ char c1='1',c2='2'; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2);} 当运行时输入:a<回车> 后,以下叙述正确的是

    A.变量c1被赋予字符a,c2被赋予回车符

    B.程序将等待用户输入第2个字符

    C.变量c1被赋予字符a,c2中仍是原有字符2

    D.变量c1被赋予字符a,c2中将无确定值


    正确答案:A
    解析:本题考查的是getchar()函数。getchar()函数执行时将从键盘缓冲区中读取用户的输入,而不管输入的是否可打印字符,所以当输入a<回车>后,键盘缓冲区被输入的实际上是两个字符:'a'和'\n'。故选项A的说法是正确的。

  • 第20题:

    已知大写字母A的ACSⅡ码为65,以下程序的运行结果是() includemain(){char c1='A',c2='Y

    已知大写字母A的ACSⅡ码为65,以下程序的运行结果是 ( ) # include<stdio.h> main( ) {char c1='A',c2='Y'; printf("%d,%d\n",c1,c2); }

    A.65,89

    B.A,Y

    C.65,88

    D.65,90


    正确答案:A

  • 第21题:

    有以下程序:include main( ) {char c1='1',c2='2';c1=getchar();c2=getchar();putcha

    有以下程序:#include <stdio, h>main( ) { char c1='1',c2='2'; c1=getchar();c2=getchar();putchar(c1);putchar(c2); } 当运行时输入:a<回车>后,以下叙述正确的是( )。

    A.变量c1被赋予字符a,c2被赋予回车符

    B.程序将等待用户输入第二个字符

    C.变量c1被赋予字符a,c2中仍是原有字符2

    D.变量c1被赋予字符a,c2中将无确定值


    正确答案:A
    解析:函数getchar()的作用是从终端(或系统隐含指定的输入设备)输入一个字符,且只能接受一个字符(回车符也是一个字符)。故本题中变量c1被赋予字符a,c2被赋予回车符。

  • 第22题:

    (8)有以下程序(说明:字符0的ASCII码值为48)

    #include <stdio.h>

    main()

    { char c1,c2;

    scanf("%d",&c1);

    c2=c1+9;

    printf("%c%c\n",c1,c2);

    }

    若程序运行时从键盘输入48<回车>,则输出结果为 【8】 。


    正确答案:
    (8)09

  • 第23题:

    单选题
    有以下程序(字母A的ASCII代码为65)#include main(){ char c1 ='A',c2 ='Y'; printf(%d, %d,c1,c2);}程序运行后的输出结果是(  )。
    A

    输出格式不合法,输出出错信息

    B

    A,Y

    C

    65,90

    D

    65,89


    正确答案: D
    解析:
    考查字符型数据。字符常量与其ASCII码值一一对应,在计算的时候,一般是字符数据对应的ASCII码参与运算,输出时会根据格式控制符输出对应的字符或者ASCII码。程序中%d表示以十进制整数形式输出c1,c2,对应的ASCII码为65和89。答案选择D选项。