更多“有字符数组a[80]和b[80],则正确的输出语句是()A、puts(a,b)B、puts(a);puts(b)C、printf("%s,%s",a[],b[]);D、putchar(a,b)”相关问题
  • 第1题:

    以下程序段的输出结果是______ 。 main() { char s1[10],s2[10],s3[10]; scanf("%s",s1);gets(s2);gets(s3); puts(s1);puts(s2);puts(s3); } 输入数据如下: (此处<CR>代表回车符) aaa<CR> bbb<CR>

    A.aaa bbb

    B.aaa bbb

    C.aaa\0bbb\0

    D.aaabbb


    正确答案:B
    解析:scanf是标准输入函数,在输入字符串a阻时,实际的内容为“aaa、0”,“\0”是由系统自动加入的;gets的功能是从终端读入一行字符,即一直读到换行符为止,并由系统自动以“、0”代替换行符。

  • 第2题:

    有以下程序:include main( ){chars[] ="Yes\n/No",*ps=s;puts(ps +4); * (pa +4) =0;p

    有以下程序: #include <stdio.h> main( ) { chars[] ="Yes\n/No",*ps=s; puts(ps +4); * (pa +4) =0; puts(s); }程序运行后的输出结果是( )。

    A.n/No Yes /No

    B./No Yes

    C./NO Yes /No

    D.n/No Yes


    正确答案:B
    解析:用puts函数输出的字符串中可以包含转义字符,遇到转义字符,自动跳过去。例如本题中ps+4指的是'/'的地址,并不是'\n'的地址,所以puts(ps+4)输出的是/NO。C规定以字符'\0',作为字符串结束标志,以便系统据此判断字符串是否结束。本题执行*(Ps+4)=0之后,再执行puts(s),就相当于输出字符串Yes后遇到结束标志。

  • 第3题:

    请补充函数fun(),该函数的功能是;删除字符数组中小于等于指定字符的字符,指定字符从键盘输入,结果仍保存

    例如,输入“abcdefghij”,指定字符为‘d’,则结果输出“defghij”。

    注意:部分源程序给出如下。

    请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。

    试题程序:

    include <stdio. h>

    define N 80

    void fun (char s[], char ch)

    {

    int i=0, j=0;

    while (s [i] )

    {

    if (s Iii<ch)

    【 】;

    else

    {

    【 】

    i++;

    }

    }

    【 】

    }

    main ()

    {

    char str [N], ch;

    clrscr ();

    printf("\n Input a string:\n");

    gets (str);

    printf("\n*** original string ***\n");

    puts (str);

    printf("\n Input a character:\n");

    scanf ("%c", &ch);

    fun(str, ch);

    printf("\n*** new string ***\n");

    puts (str);

    }


    正确答案:i++ s[j++]=s[i] s[j]='\0'
    i++ s[j++]=s[i] s[j]='\0' 解析:第一空:如果当前字符比指定字符小,则什么都不做,通过i++访问下一个字符。第二空,如果当前字符大于等于指定字符,则将它保存在字符数组s中。第三空:通过保存比指定字符大或相等的字符,来实现删除比指定字符小的字符。处理结束后,在字符串s最后要加上结束标记符‘\0’。

  • 第4题:

    下述语句中,在字符串sl和s2相等时显示“they are Equal”的是( )。

    A.if(*s1==*s2) puts("they are Equal");

    B.if(!strcmp(s1,s2)) puts("they are Equal");

    C.if(s1==s2) Puts("they are Equal");

    D.if(strcmp(s1,s2)) puts("they are Equal”);


    正确答案:B
    解析:字符串比较不能用两个等号(==)来进行比较,应使用stremp(s1,s2)函数来比较。strcmp(s1,s2)函数的功能是:当字符串s1和s2相等时,返回值为0,因此,当表达式!strcmp(s1,s2)==1时,条件成立,执行后面的语句,输出they are Equa1。

  • 第5题:

    下列给定程序中,函数fun()的功能是;将s所指字符串中的字母转换为按字母序列的后续字母(但Z转化为A,z转化为 a),其他字符不变。

    请改正函数fun()中的错误,使它能得出正确的结果。

    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

    试题程序:

    include <stdio.h>

    include <ctype.h>

    include <conio.h>

    void fun(char *s)

    /*************found**************/

    { while(*s!='@')

    { if(*s>='A' &*s<='z'||*s>='a'&&*s<='z')

    {if(*s=='Z') *S='A';

    else if(*S=='z') *s='a';

    else *s+=1;

    }

    /*************found**************/

    (*s)++;

    }

    }

    main()

    { char s[80];

    clrscr();

    printf("\n Enter a string with length <80:\n\n");gets(s);

    printf("\n The string:\n\n");puts(s);

    fun(s);

    printf("\n\n The Cords:\n\n");puts(s);

    }


    正确答案:(1)错误:while(*s!='@') 正确:while(*s) (2)错误:(*s)++; 正确:s++;
    (1)错误:while(*s!='@') 正确:while(*s) (2)错误:(*s)++; 正确:s++; 解析:根据题目要求,可对字符串所有字母进行遍历。对每一个字母,若该字母为'z'或'Z',将该字母改成'a'或'A',即 ASCII码值减25,当然也可以用题目中的if语句来实现转换。若该字母不是'z'或'Z',则该字母的ASCII码值加1;对字符串所有字符重复以上过程即可得到题目要求的结果,可用循环语句和条件语句来实现。

  • 第6题:

    下列语句中,在字符串s1和s2相等时显示“they are Equal”的是( )。

    A.if(*s1==*s2)

    B.if(!strcmp(s1,s2)) puts("they are Equal"); puts("they are Equal");

    C.if(s1==s2)

    D.if(strcmp(s1,s2)) Puts("they are Equal"); pros("they are Equal");


    正确答案:B
    解析:字符串比较不能用两个等于号(==)来进行比较,应使用函数strcmp(s1,s2)来比较。函数stremp(s1,s2)的功能是:当字符串s1和s2相等时,返回值为0。因此,当表达式!strcmp(s1,s2)=1时,条件成立,执行后面的语句,输出theyareEqual。

  • 第7题:

    试题30

    若有定义语句: char *s1=”OK”, *s2=”ok”; , 以下选项中,能够输出”OK”的语句是()

    A.if(strcmp(s1,s2)==0) puts(s1);

    B.if(strcmp(s1,s2)!=0) puts(s2);

    C.if(strcmp(s1,s2)==1) puts(s1);

    D.if(strcmp(s1,s2)!=0) puts(s1);


    正确答案:D
    试题30分析
    strcmp(s1,s2)函数,如果s1>s2,结果大于0;如果s1=s2,结果等于0;如果s1<s2,结果小于0;D项strcmp(s1,s2)!=0成立,所以输出s1。
    试题30答案
    D

  • 第8题:

    可以完成单字符或多个字符输出的是()。

    • A、putchar()
    • B、printf()
    • C、puts()
    • D、gets()

    正确答案:A,B,C

  • 第9题:

    完善程序,用puts函数输出字符数组str。charstr[]={“abc/ndef”};();


    正确答案:puts(str);

  • 第10题:

    设已定义charc[8]=”Tianjin”和intj,则下面的输出函数调用中错误的是()

    • A、printf(“%s”,c);
    • B、for(j=0;j<8;j++)printf(“%c”,c[j]);
    • C、puts(c);
    • D、for(j=0;j<8;j++)puts(c[j]);

    正确答案:D

  • 第11题:

    单字符输入函数是()。

    • A、putchar()
    • B、getchar()
    • C、gets()
    • D、puts()

    正确答案:B

  • 第12题:

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

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

    正确答案:A

  • 第13题:

    字符组a[20]和b[20],下面正确的输出语句是()。

    A.put(a,b)

    B.prinf(“%s,%s”,a[],b[])

    C.putchar(a,b)

    D.puts(a);puts(b)


    正确答案:D

  • 第14题:

    下列的程序用来输出两个字符串前7个字符中对应相等的字符及其位置号,程序空白处应该填写的是( )。 #include<stdio.h> main() { Char sl[]="Chinese",s2[]="japnese"; int i; for(i=0;s1[i]!='\0'&&s2[i]!='\0';i++) if(s1[i]=s2[i]&&i<7) ____________________; }

    A.putchar(s2[i];putchar(i)

    B.puts(s1[i],i)

    C.printf("%c%d\n",s2[i],i)

    D.printf("%c",s1[i]);printf("%d\n",i)


    正确答案:C
    解析: putchar(s)的功能是把字符s输出到标准输出设备;puts(s1)是把s1指向的字符串输出到标准输出设备。

  • 第15题:

    下述语句中,在字符串s1和s2相等时显示"they are Equal"的是( )。

    A.if(*s1=*s2) puts("they are Equal");

    B.if(!strcmp(s1,s2)) puts("they are Equal");

    C.if(s1==s2) puts("they are Equal");

    D.if(strcmp(s1,s2)) puts("they are Equal");


    正确答案:B

  • 第16题:

    数组str全由大小写字母字符组成。请补充函数fun(),该函数的功能是:把str中的字母转换成紧接着的下一个字母,如果原来的字母为‘z’或‘Z’,则相应地转换成‘a’或‘A’,结果仍保存在原数组中。

    例如,输入“StudentZz”,则输出“TuvefouAa”。

    注意:部分源程序给出如下。

    请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。

    试题程序:

    include<stdio.h>

    define N 80

    void fun(char s[])

    {

    int i;

    for(i=0;【 】;i++)

    {

    if(s[i]=='z'||s[i]='Z')

    s[i]-=【 】;

    else

    s[i]+=【 】;

    }

    }

    main()

    {

    char str[N];

    clrscr();

    printf("\n Input a string:\n");

    gets(str);

    printf("\n*** original string***\n");

    puts(str);

    fun(str);

    printf("\n*** new string***\n");

    puts(str);

    }


    正确答案:s[i]!='\0' 25 1
    s[i]!='\0' 25 1 解析:第一空:for循环的执行条件是当前字符不为'\0',即还没有到字符串的最后一个字符'\0'。第二空:如果原来的字母是‘z’或‘Z’,则要转换成‘a’或‘A’。也就是把ASCII码减去25。第三空:除了字母‘z’或‘Z’,其他字母都转换成下一个字母,所以把ASCII码加上1。

  • 第17题:

    若有定义语句:

    char}sl=‘’0K”,:It s2=”ok”;

    以下选项中,能够输出“OK”的语句是( )。

    A.if(strcmp(sl,s2)!=0)puts(s2);

    B.if(strcmp(sl,s2)!=0)puts(s1);

    C.if(strcmp(sl,s2)==1)puts(s1);

    D.if(strcmp(sl,s2)==0)puts(s1);


    正确答案:B
    strcmp(sl,s2)是字符串比较函数,比较规则是两个字符串自左向右逐个字符相比(按照ASCIl码值大小),-以第一个不相同的字符的大小作为比较结果。因为。O。<10.,所以strcmp(sl,s2)为负值,只有B选项正确。

  • 第18题:

    下述程序用来输出两个字符串前7个字符中对应相等的字符及其位置号,则程序空白上应该填写的是( )。

    #include<stdio.h>

    main

    { char s1[]="chinese",s2[]="japanese";

    int i;

    for(i=0;s1[i]='\0'&&s2[i]!='\0';i++)

    if(s1[i]==s2[i]&&i<7)

    _____________;

    }

    A.putchar(s2[i]);putchar(i)

    B.puts(s1[i],i)

    C.printf("%c%d\n",s2[i],i)

    D.printf("%C",s1[]);printf("%d\n",i)


    正确答案:A
    本题考查输出函数putchar的功能,即把字符输出到标准输出设备;puts是把指向的字符串输出到标准输出设备。

  • 第19题:

    下述语句中,在字符串s1和s2相等时显示”they are Equal”的是( )。

    A)if(*s1==*s2)

    puts("they are Equal");

    B)if(!strcmp(s1,s2))

    puts("they are Equal");

    C)if(s1=s2)puts(”they are Equal”);

    D)if(strcmp(s1,s2))

    puts(”they are Equal”);


    正确答案:B

  • 第20题:

    可以完成输出的是()。

    • A、putchar()
    • B、printf()
    • C、puts()
    • D、gets()

    正确答案:A,B,C

  • 第21题:

    下面关于gets()与puts()函数描述正确的项是()

    • A、gets()读取的字符串,其长度没有限制,以敲回车键结束。
    • B、gets()输入字符串时要保证字符数组有足够大的空间,存放输入的字符串。
    • C、puts()函数一次只能输出一个字符串
    • D、puts()函数是把字符数组中所存放的字符串,输出到标准输出设备中去,并用‘/n’取代字符串的结束标志‘/0’。

    正确答案:A,B,C,D

  • 第22题:

    单字符输出函数是()。

    • A、putchar()
    • B、getchar()
    • C、gets()
    • D、puts()

    正确答案:A

  • 第23题:

    putchar()是C标准函数库中专门用于字符输出的函数与puts()函数作用相同


    正确答案:错误

  • 第24题:

    单选题
    若有定义语句 char*s1="OK",*s2="ok"; 以下选项中能够输出"OK"的语句是(  )。
    A

    if(strcmp(s1,s2)==0)puts(s1);

    B

    if(strcmp(s1,s2)!=0)puts(s2);

    C

    if(strcmp(s1,s2)==1)puts(s1);

    D

    if(strcmp(s1,s2)!=0)puts(s1);


    正确答案: B
    解析:
    strcmp用于比较两字符串:当s1s2时,返回值大于0。题中s1与s2两个字符串不相等且s1小于s2,AC两项错误。B项,输出的小写的ok,只有D项输出的是大写的OK。答案选择D选项。