(23)有以下程序#include<stdio.h>main(){ int a1,a2;char c1,c2;scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);printf(“%d,%c,%d,%c”,&1,c1,a2,c2);}若想通过键盘输入,使得a1的值为12,a2的是为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b,则正确的输入格式是(以下 代表空格,<CR>代表回车)A)12a34b<CR>B)12 a 34 b<CR>C)12,a,34,b<CR

题目

(23)有以下程序

#include<stdio.h>

main()

{ int a1,a2;char c1,c2;

scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);

printf(“%d,%c,%d,%c”,&1,c1,a2,c2);

}

若想通过键盘输入,使得a1的值为12,a2的是为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b,则正确的输入格式是(以下 代表空格,<CR>代表回车)

A)12a34b<CR>

B)12 a 34 b<CR>

C)12,a,34,b<CR>

D)12 a34 b<CR>


相似考题
参考答案和解析
正确答案:A
更多“(23)有以下程序 #include&lt;stdio.h&gt; main() { int a1,a2;char c1,c2; scanf(“%d%c%d%c” ”相关问题
  • 第1题:

    有以下程序 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回车后,自否输出结果、结束运行(请回答能或不能)【 】。


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

  • 第2题:

    有程序段: int al,a2; Char cl,c2; scanf("%d%c%d%c",&a1,&cl,&a2,&c2); 若要求a1、a2、c1、c2的值分别为10、20、A、B,正确的数据输入 ( )

    A.10A 20B<CR>

    B.10A 20 B<CR>

    C.10 A20B<CR>

    D.10A20 B<CR>


    正确答案:A

  • 第3题:

    有下列程序: #include<stdi0.h> voidmain( ) {inta1,a2charc1,c2; scanf("%d%c%d%C",&a1,&c1,&a2,&c2); printf("%d%c%d%C",a1,c1,a2,c2); } 若想通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是12,a,34.

    A.12a34b<CR>

    B.

    C.12,a,34,b<CR>

    D.


    正确答案:A
    A。【解析】从程序的输入格式控制方法判断,输入时各变量之间没有分隔符,当输入相应的变量对应的值时,相应的变量能够得到对应的值,可以输出要求的结果。

  • 第4题:

    有以下程序:void fun (char *a,char *b){a=b;(*a)++;}main(){char cl='A',c2='a',*p1,*p2;p1=&am

    有以下程序: void fun (char *a,char *b) { a=b;(*a)++;} main() { char cl='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指向变量的值加1。在主函数中定义了字符型指针变量p1和p2,并让它们分别指向c1和c2。将p1、p2作为实参传递给形参a、b。在fun()函数中,首先让指针变量p1指向p2,然后p1指向的存储空间的值加1,即让变量c2加1为b,而c1的值没有被改变,仍然是A。所以,4个选项中选项A符合题意。

  • 第5题:

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