参考答案和解析
正确答案: D
解析:
输出函数printf()的一般形式为“printf("格式控制字符串",输出项1,输出项2,…)”,输出项的形式要和格式控制字符串中的格式控制符保持一致,"%s"为输出字符串,"%c"为输出单个字符,"%d"为以十进制形式输出带符号整数,答案选择A选项。
更多“单选题以下能正确输出字符a的语句是(  )。A printf(%s, a);B printf(%s, 'a');C printf(%c, a);D printf(%d, 'a');”相关问题
  • 第1题:

    根据下列的定义,能打印出字母P的语句是( )

    struct stu {char name[10];

    int age;

    };

    stmct stu s[10]={"John",11,

    "Paul",12,

    "Mary",11,

    "adam",12

    }:

    A.printf("%c",s[3].name);

    B.printf("%c",s[3].name[1]);

    C.printf("%c",s[2].name[11]);

    D.printf("%c",s[1].name[0]);


    正确答案:D
    解析:本题主要考查按结构数组元素方式引用结构成员。字母P为“Paul”的第一个字母,是结构体s[1]的name成员的第二个元素的值,即s [1].name[0]的值。

  • 第2题:

    以下说法中,正确的是______。

    A.#define和printf都是C语句

    B.#define是C语句,而printf不是

    C.printf是C语句,但#define不是

    D.#define和printf都不是C语句


    正确答案:C

  • 第3题:

    设有定义:long x=-123456L; 则以下能够正确输出变量x值的语句是_______。

    A.printf(“x=%d\n”,x)

    B.printf(“x=%ld\n”,x)

    C.printf(“x=?l\n”,x)

    D.printf(“x=%D\n”,x);


    正确答案:B

  • 第4题:

    设有char str[10],下列语句正确的是A.scanf("%s",&str); B.printf("%c",str); C.printf("%s",str[0]); D.printf("%s",str);


    正确答案:D
    本题主要考查字符数组的引用。题目中定义了一个大小为10的字符数组str。下面分别分析每个选项。
    在选项A中,从scanf("%s",&str);语句的输入列表&str可以知道此语句不正确,因为str是数组名,本身就表示一个地址,再加一个取地址符&,使表示方法不正确。
    在选项B中,由于printf("%c",str);语句的输出格式表示输出单个字符,而输出列表中的str表示一个地址,而不是数值,表示方法不对。
    在选项C中,由于printf("%s",str[0]);语句的输出格式表示输出一个字符串,而输出列表中的str[0]表示一个字符,表示方法不对。
    在选项D中,由于printf("%s",str);语句的输出格式表示输出一个字符串,而输出列表中的str表示一个字符串的首地址,通过这个方式可以实现输出str所指向的字符串。

  • 第5题:

    若变量已正确定义,则以下语句的输出结果是______。 s=32;s^=32;printf("%d",s);

    A.-1

    B.0

    C.1

    D.32


    正确答案:B
    解析: 为按二进制异或运算符,变量s与其相等的数值异或的结果为0。

  • 第6题:

    根据下列的定义,能打印出字母P的语句是( )。 struct stu {char name[10]; int age; }; struct sm s[10]={"John",11, "Pau1",12, "Mary",11, "adam",12 };

    A.printf("%c",s[3].name);

    B.printf("%c",s[3].name[1]);

    C.printf("%c",s[2].name[1]);

    D.printf("%c",s[1].name[0]);


    正确答案:D
    解析:本题主要考查按结构数组元素方式引用结构成员。字母P为“Paul”的第一个字母,是结构体s[1]的name成员的第一个元素的值,即s[1].name[0]的值。

  • 第7题:

    试题21

    以下不恩那个输出字符A的语句时(注:字符A的ASII码值为65,字符a的ASCII码值为97)()

    A.printf(“%c\n”,’a’ -32);

    B.printf(“%d\n”, ‘A’);

    C.printf(“%c\n”,65);

    D.printf(“%c\n”, ‘B’- 1);


    正确答案:B
    试题21分析
    ’a’ -32=97-32=65,A,C,D的结果都为A,B想输出的为一个整数65而非A。
    试题21答案
    B

  • 第8题:

    若已定义:int a=5;floatb=63.72;以下语句中能输出正确值的是()

    • A、printf(“%d%d”,a,b)
    • B、printf(“%d%2f”,a,b)
    • C、printf(“%2f%2f”,a,b)
    • D、printf(“%2f%d”,a,b)

    正确答案:B

  • 第9题:

    要使doublex;longa;的数据能正确的输出,输出语句应是()。

    • A、printf(“%d,%f”,a,x);
    • B、printf(“%d,%1f”,a,x);
    • C、scanf(“%1d,%1f”,&a,&x);
    • D、printf(“%1d,%lf”,a,x);

    正确答案:D

  • 第10题:

    已定义了相关变量,若要输出26个大写英文字母正确的输出语句是()

    • A、for(a=’A’;a<=’Z’;a++)printf("%
    • B、for(a=’Z’;a>=’A’;a--)printf("%c",a);
    • C、for(a=’A’;a<=’Z’;){printf("%c",a);a++;}
    • D、for(a=’A’;a<=’Z’;){a++;printf("%c",a);}

    正确答案:A,B,C

  • 第11题:

    设有char*a=”ABCD”;,则printf(“%s”,a)的输出是(),而printf(“%c”,*a)的输出是()。


    正确答案:ABCD;A

  • 第12题:

    单选题
    有以下程序: #include  main() {  int s;  scanf(%d,&s);  while(s>0)  {   switch(s)   {    case 1:printf(%d,s+5);    case 2:printf(%d,s+4);break;    case 3:printf(%d,s+3);    default:printf(%d,s+1);break;   }   scanf(%d,&s);  } } 运行时,若输入1 2 3 4 5 0<回车>,则输出结果是(  )。
    A

    6566456

    B

    66656

    C

    66666

    D

    6666656


    正确答案: D
    解析:
    输入1:执行case1,输出6,没有遇到break,继续执行case2,输出5,遇到break,跳出;
    输入2:执行case2,输出6,遇到break,跳出;
    输入3:执行case3,输出6,没有遇到break,执行default,输出4;
    输入4:执行default,输出5;
    输入5:执行default,输出6。
    最后输出结果是6566456。

  • 第13题:

    若有以下说明:chars1[]={"tree"},s2[]={"flower"};,则以下对数组元素或数组的输出语句中,正确的是()。

    A.printf("%s%s",s1[5],s2[7]);

    B.printf("%c%c",s1,s2);

    C.puts(s1);puts(s2);

    D.puts(s1,s2);


    正确答案:C

  • 第14题:

    有以下程序: include main( ) {char s[ ] ="159" , * p;p=s;printf( "% c", * p + +

    有以下程序: #include <stdio.h> main( ) { char s[ ] ="159" , * p; p=s; printf( "% c", * p + + ); printf("%~", * p++);}程序运行后的输出结果是( )。

    A.15

    B.16

    C.12

    D.59


    正确答案:A
    解析:语句p=s将指针变量p指向字符数组s,第一次输出时,由于++和*为同一优先级,而结合方向为自右向左,所以,*p++相于*(p++)。但又因为“++”在p的右侧,所以,先输出*p,得到s[0]的值,然后P++,P指向s[1],故第二次输出时,输出s[1]的值,所以输出结果为15。

  • 第15题:

    有以下程序

    #include<stdio.h>

    main()

    {int s;

    scanf(“%d”,&s);

    while(s>0)

    {switch(s)

    {case 1;printf(“%d”,s+5);

    case 2:printf(“%d”,s+4);break;

    case 3:printf(“%d”。s+3);

    default:printf(“%d”,s+1);break;

    }

    seanf(“%d”,&s);

    }

    }

    运行时,若输入1 2 3 4 5 O<回车>,则输出结果是

    A.6566456

    B.66656

    C.66666

    D.6666656


    正确答案:A

  • 第16题:

    char *p="hello";

    printf("%s",p);

    p++;

    printf("%s",p);

    printf("%c",*p);


    正确答案:
     

  • 第17题:

    以下不能输出字符A的语句是(注:字符A的ASCII码值为65,字符a的ASCII码值为97)

    A.printf("%c\n",'a'-32);

    B.printf("%d\n",'A');

    C.printf("%c\n",65);

    D.printf("%c\n",'B'-1);


    正确答案:B
    解析:A)、C)、D)三个选项的输出格式都是%c,只有B)的输出格式是%d,只会输出数字65,所以应选择B)。

  • 第18题:

    试题19

    下列条件语句中,输出结果与其他语句与其他语句不同的是()

    A. if(a) printf(“%d\n”,x); else printf(“%d\n”, y);

    B. if(a==0) printf(“%d\n”,y); else printf(“%d\n”, x);

    C. if(a!=0) printf(“%d\n”,x); else printf(“%d\n”, y);

    D.if(a==0) printf(“%d\n”,x); else printf(“%d\n”, y);


    正确答案:D
    试题19分析
    A,如果a为非0,输出x,否则输出y。
    B,如果a等于0,输出y,否则输出x。
    B,如果a为非0,输出x,否则输出y。
    D,如果a等于0,输出x,否则输出y。
    试题19答案
    D

  • 第19题:

    执行“printf("%s%s%d","wei","rong",18);”语句后得到的输出结果为()。
    weirong18

  • 第20题:

    设有char str〔10〕,下列语句正确的是()

    • A、scanf(”%s”,&str);
    • B、print[(”%c”,str);
    • C、printf(”%s”,str〔0〕);
    • D、printf(”%s”,str);

    正确答案:D

  • 第21题:

    printf函数中,%c和%s都可以输出字符串.


    正确答案:错误

  • 第22题:

    有字符数组a[80]和b[80],则正确的输出语句是()

    • A、puts(a,b)
    • B、puts(a);puts(b)
    • C、printf("%s,%s",a[],b[])
    • D、putchar(a,b)

    正确答案:A

  • 第23题:

    下面语句正确的是()

    • A、int*p;*p=20
    • B、char*s=”abcdef”;printf(“%s/n”,s)
    • C、charstr[]=”abcd”;str++
    • D、charstr[]={‘a’,’b’,’c’};printf(“%s”,str)

    正确答案:B

  • 第24题:

    单选题
    下面语句正确的是()
    A

    int*p;*p=20

    B

    char*s=”abcdef”;printf(“%s/n”,s)

    C

    charstr[]=”abcd”;str++

    D

    charstr[]={‘a’,’b’,’c’};printf(“%s”,str)


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