更多“若定义了charch[]={″abc/0def″},*p=ch;则执行printf(″%c″,*p+4);语句的输出结果”相关问题
  • 第1题:

    若有定义:int X=0,* P=&x;,则语句printf(”%d\n”,* P.的输出结果是( )。

    A.随机值

    B.0

    C.X的地址

    D.P的地址


    正确答案:B
    题中定义的语句等价于以下语句。故本题定义一个整型变量x和一个指向整型的指针P,并把变量X的地址赋值给P,即P为指向整型变量x的指针,则*P表示P所指向的整型变量x的数值。

  • 第2题:

    若输入12345、abc,程序的输出结果为______。 main() { int a; char ch; scanf("%3d,%3c",&a,&ch); printf("%d,%c",a,ch); }

    A.123,abc

    B.123,4

    C.123,a

    D.12345,abc


    正确答案:B
    解析:指定输入数据所占列数之后,系统自动按它截取所需数据,无须分界符。程序中指定整型变量a占3列,输入12345、abc后,系统自动将数据前3列123赋给变量a,而剩余的数据则根据具体情况赋给其他变量或作为多余数据处理。因程序中还需对字符变量ch输入数据,虽然指定输入3列字符,但字符型数据只能有一个字符,因此把剩余的“45、abc”中第1个数据4赋给变量ch,故正确答案为选项B。

  • 第3题:

    若有如下定义并赋值: char ch='a', a; 则执行语句"printf("%d",a=ch+2.6);”后的输出结果是( )

    A.c

    B.d

    C.99

    D.100


    正确答案:C

  • 第4题:

    若有定义:int x=0,*p=&x;,则语句printf("%d\n",*p);的输出结果是 ______。

    A.随机值

    B.0

    C.x的地址

    D.p的地址


    正确答案:B
    解析:由定义*p=&x,p指向x的地址,*p=x,因此输出的是x的值。

  • 第5题:

    有如下定义:charstr[3][2]={’a’,’b’,’c’,’\0’,’e’,’f’};则语句:printf("%s",str[0]);的输出结果是()

    A.ab

    B.abcef

    C.abc\0

    D.abc


    参考答案:D

  • 第6题:

    以下程序的输出结果是______。 char cchar(char ch) { if(ch>='A'&&ch<='z')ch=ch-'A'+'a'; return ch; } main() { char s[]="ABC+abc=defDEF",*p=s; while(* p) { * p=cchar(* p); p++; } printf("% s\n", s); }

    A.abe+ABC=DEFdef

    B.abc+abe=defdef

    C.abcaABCDEFdef

    D.abcabcdefdef


    正确答案:B
    解析:字符数组元素作函数参数是单向的值传递。函数cchar的功能是将大写字母转换为小写字母。主函数中while循环语句的条件是判断指针p当前指向的字符是否为空,若不为空,则调用函数cchar,即主函数中通过循环语句将字符串"ABC+abc=defDEF"中的大写字母全部转换为小写字母,因此printf的输出结果为选项B。

  • 第7题:

    以下程序的输出结果是 char cchar(char ch) { if(ch>='A'&&ch<='Z') ch=ch-'A'+'a'; return ch; } main ( ) { char s [] = "ABC+abc=defDEF" , *p=s; while (*p) { *p=cchar(*p); p++; } printf { "%$\n", s); }

    A.abc+ABC=DEFdef

    B.abc+abc=defdef

    C.abcABCDEFdef

    D.abcabcdefdef


    正确答案:B
    解析:本题考核的知识点是字符型指针变量与函数的综合应用。本题首先定义了一个函数cchar(),有一个字符型参数ch。在函数中首先判断该字符是否为大写字母,如果是则把它转换成小写字符再赋值给cb,把ch作为函数值返回。在主函数中定义了一个字符数组s并初始化,然后定义了一个指针变量并使它指向数组s。接着通过一个while循环利用指针变量p,依次取出字符数组的字符(直到遇到字符串结束标志['\0'为止),并调用cchar()函数,把大写字母转换成小写字母,其他字符不变。最后输出字符数组为s中的内容,结果为“abc+abc=defdeF”。所以,4个选项中B为所选。

  • 第8题:

    下列程序段的输出结果是()。  char str[ ]= “abc/0def/0ghi”, *q=str;  printf(“%s”,q+5); 


    正确答案:ef

  • 第9题:

    有如下定义:charstr[3][2]={’a’,’b’,’c’,’/0’,’e’,’f’};则语句:printf("%s",str[0]);的输出结果是()

    • A、ab
    • B、abcef
    • C、abc/0
    • D、abc

    正确答案:D

  • 第10题:

    若定义了charch[]={″abc/0def″},*p=ch;则执行printf(″%c″,*p+4);语句的输出结果是()

    • A、def
    • B、d
    • C、e
    • D、0

    正确答案:C

  • 第11题:

    单选题
    有以下程序: #include  main() {  char ch='B';  while(ch<'E')  {   printf(%d,ch-'A');   ch++;  }  printf(); } 程序运行后的输出结果是(  )。
    A

    123

    B

    ABC

    C

    abc

    D

    012


    正确答案: C
    解析:
    当满足ch<'E',输出ch-'A',即字符的ASCII码相减进行输出,%d表示输出十进制整数。循环开始ch='B',ch-'A'=1,以此类推,答案选择A选项。

  • 第12题:

    单选题
    有如下程序: #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


    正确答案: C
    解析:
    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选项。

  • 第13题:

    若ch为char型变量,k为int型变量(已知字符a的ASCIl码是97),则执行下列语句后输出的结果为( )。 ch=b; k=10: printf("%X,%o,",ch,ch,k); printf("k=%%d\n",k);

    A.因变量类型与格式描述符的类型不匹配,输出无定值

    B.输出项与格式描述符个数不符,输出为0值或不定值

    C.62,142,k=%d

    D.62,142,k=%l0


    正确答案:C
    第1个printf函数,格式说明的个数是2,而输出项的个数是3,所以对于多余的输出项k不予输出;第2个printf函数,有两个%说明,第1个%后面的字符要原样输出。本题考查printf函数的格式。①“%x”和“%o”分别表示以十六进制和八进制无符合型输出整型数据(不带前导ox或o);②printf函数中格式说明符之前插入的任何字符都原样输出;③格式说明与输出项的个数也要相等,如果格式说明的个数少于输出项的个数,则对于多余的输出项不予输出。

  • 第14题:

    以下程序的输出结果是()。includecharcchar(chareh){if(ch>='A,&&ch<='Z')ch=c

    以下程序的输出结果是( )。 #include <stdio.h> charcchar(char eh) { if(ch>='A,&&ch<='Z') ch=ch-'A'+'a'; return ch; } main() { char s[]="ABC+abc=defDEF",*p=s; while(*p) { *p=cchsr(*p); p++; } printf("%s\n",s); }

    A.abc+ABC=DEFdef

    B.abc+abc=defdef

    C.abcABCDEFdef

    D.abcabcdefdef


    正确答案:B
    解析:本题中cchar函数的作用是:如果参数ch是大写字母,则将它转换成小写字母,而对大写字母以外的字符不起作用。

  • 第15题:

    设有定义:float x=123.4567;,则执行以下语句后的输出结果是[ ]。

    printf("%f\n"(int)(x*100+0.5)/100.1;


    正确答案:123.46
    123.46 解析:输出语句的表达式:(int)(x*100+0.5)/100.0是指先运算表达式中的“x*100+0.5”,然后将其结果强制转换为int型,即:(int)(l23.4567*100+O.5)=(int)12346.17=12346,接下来进行”/100.0”的运算即:12346/100.0=123.46,原因是除运算是双目运算,当—边是整型数,—边是实型数时,系统自动将整型转换为实型数,然后进行运算,又因为最后的的输出格式是float类型的实数,所以结果为123.460000。

  • 第16题:

    若有定义:“int*P,x=0,*p,p=&x;”,则语句“printf("%d\n",*p);”的输出结果是( )。

    A.随机值

    B.0

    C.x的地址

    D.P的地址


    正确答案:A
    *P的意思是取其指向地址的内容,P是指向x地址的指针,因此输出*p也就是输出x的内容,即0,故选择B选项。

  • 第17题:

    设有说明语句如下: static char str[]="Beijing"; 若执行下列输出语句: printf("%d\n",strlen(strcpy(str,"China")));则输出结果为( )。

    A.5

    B.7

    C.12

    D.14


    正确答案:A
    解析:本题考查求字符串的长度。数组str初始化的长度是7,使用strcpy函数将新字符串赋给str后,strlen函数返回的是新字符串的字符个数5。

  • 第18题:

    下列程序的输出结果是()。 inClude main() {charch[2][5]={"1234","5678"},*p[2]; int

    下列程序的输出结果是( )。

    #inClude<stdio.h>

    main()

    { charch[2][5]={"1234","5678"},*p[2];

    int i,j,s=0;

    for(i=0;i<2;i++)

    p[i]=ch[i];

    for(i=0;i<2;i++)

    for(j=0;p[i][j]>'\0';j+=2)

    { s=p[i][j]-'0';

    printf("%d",s);}

    }

    A.6357

    B.6135

    C.1357

    D.691357


    正确答案:C
    解析:本题先将指针p指向二维数组ch[2][5],相当于p[0]="1234",p[1]="5678",通过双重for循环,是要将p中的字符隔一个输出一个,通过s=p[i][j]-'0'这条语句是将所要输出的字符转换成相应的+进制数。

  • 第19题:

    若定义了charch[]={″abc\0def″},*p=ch;则执行printf(″%c″,*p+4);语句的输出结果是()

    A.def

    B.d

    C.e

    D.0


    参考答案:C

  • 第20题:

    设有定义:intx=0,*p=&x;则语句printf(“%d/n”,*p);的输出结果是()

    • A、随机值
    • B、0
    • C、x的地址
    • D、p的地址

    正确答案:B

  • 第21题:

    设有定义语句:charstr[][20]={"Hello","Beijing"},*p=str;()则printf("%d/n",strlen(p+20));输出结果是

    • A、0
    • B、5
    • C、7
    • D、20

    正确答案:C

  • 第22题:

    单选题
    有如下程序: #include  main() {  char ch='M';  while(ch!='K')  {   ch--;   putchar(ch);  }  printf(); } 程序运行后的输出结果是(  )。
    A

    MN

    B

    LK

    C

    OP

    D

    MM


    正确答案: B
    解析:
    程序执行过程为:定义字符变量ch='M',判断ch!='K'成立,ch--后值为'L',输出L;判断ch!='K'成立,ch--后值为'K',输出K;判断ch!='K'不成立,退出循环。程序运行后的输出结果为LK。答案选择B选项。

  • 第23题:

    填空题
    下列程序段的输出结果是()。  char str[ ]= “abc/0def/0ghi”, *q=str;  printf(“%s”,q+5);

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