以下程序段的输出结果是________。 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 bbbB.aaa bbbC.aaa\0bbb\0D.aaabbb

题目

以下程序段的输出结果是________。 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


相似考题
更多“以下程序段的输出结果是________。 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 bbbB.aaa bbbC.aaa\0bbb\0D.aaabbb”相关问题
  • 第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题:

    以下程序的输出结果是______。includeincludefun(char*w,int n){ char t,*s

    以下程序的输出结果是______。 #include<stdio.h> #include<string.h> fun(char*w,int n) { char t,*s1,*s2; s1=w;s2=w+n-1; while(s1<s2) { t=*s1++; *s1=*s2-; *s2=t; } } main() { char*p; p="1234567"; fun(p,strlen(p)); puts(p); }

    A.1234567

    B.7654321

    C.1711717

    D.7177171


    正确答案:C
    解析:在子函数fun中,s1为字符串w的起始地址,s2为字符串的结束地址(字符'\0'除外),当执行循环结束循环, w="1711717"。

  • 第3题:

    以下程序的输出结果是______。includeincludefun(char *w,int n){ char t,*

    以下程序的输出结果是______。 #include<stdio.h> #include<siring.h> fun(char *w,int n) { char t,*s1,*s2; s1=w;s2=w+n-1; while(s1<s2) { t=*s1++; *s1=*s2-; *s2=t; } } main() { char *p; p="1234567"; fun(p,strlen(p)); puts(p); }

    A.1234567

    B.7654321

    C.1711717

    D.7177171


    正确答案:C
    解析:在子函数fun中,s1为字符串w的起始地址,s2为字符串的结束地址(字符'\0'除外),当执行循环结束循环,w=“1711717”。

  • 第4题:

    下列程序运行后,输出结果是______。 include include fun(char *w ,int

    下列程序运行后,输出结果是______。 #include <stdio. h> #include <string. h> fun (char *w ,int n) { char t,*s1,*s2; s1=w; s2=w+n-1; while (s1<s2) { t=*s1++; *s1=*s2--; *s2=t; } } main () { char *p; p="1234567"; fun (p, strlen (p)); puts (p); }

    A.1234567

    B.7654321

    C.1711717

    D.7177171


    正确答案:C

  • 第5题:

    下述语句中,在字符串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

  • 第6题:

    若有定义语句:

    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选项正确。

  • 第7题:

    设有如下程序: #include'string.h" main() { static char s1[20],s2[20]; scanf("%s",s1);scanf("%s",s2); if(strcmp(s1,s2)) printf("@"); else printf("$"); printf("%d\n",strlen(strcat(s1,s2))); } 如果从键盘上输入name1<回车>name2<回车>,则程序运行后的输出结果是( )。

    A.$9

    B.@11

    C.$10

    D.@10


    正确答案:D
    解析:本题首先定义了两个字符数组,然后从键盘读入两个字符串"name1"和"name2"分别赋给它们,接下来使用strcmp()函数比较两个字符串是否相等,若不相等就输出一个‘@’字符,否则输出一个‘$’字符,所以本题先输出一个‘@’字符。最后使用strcat()函数将两个字符串连成一个,然后使用strlen()函数求连接后的字符串长度,所以接下来又输出一个10。故本题的正确答案为D。

  • 第8题:

    下列语句中,在字符串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。

  • 第9题:

    以下程序的输出结果是( )。 include main() {char*s1,*s2,m; s1=s2=(char*)malloc(size

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

    include<stdlib.h>

    main()

    {char*s1,*s2,m;

    s1=s2=(char*)malloc(sizeof(char));

    *s1=15;

    *s2=20;

    m=*s1+*s2:

    printf("%d\n",m);

    }


    正确答案:40
    40 解析:malloc()函数的作用是开辟一个长度为sizeof(char)的内存区,s1、s2为指向字符型数据的指针变量,执行“s1=s2=(char*)malloc(sizeof(chat));”语句后,s1、s2指向同一个存储空间,此时m=*s1+*s2=20+20=40。

  • 第10题:

    main()

    { char *s2=“I love China!”,**s1=&s2;

    char *s3,c,*s4=“w”;

    s3=&c;

    *s3=‘H’;

    s2=s2+2;

    printf(“%s\t%c\t%s\t%c\n”,s2,*s3,s4,**s1);

    }


    正确答案:
    6.love China! H w l

     high byte:12

     low byte:34

     word value:1274

     the result:3ca8

  • 第11题:


    A.V(S1)P(S2)和V(S3)
    B.P(S1)V(S2)和V(S3)
    C.V(S1)V(S2)和V(S3)
    D.P(S1)P(S2)和V(S3)

    答案:C
    解析:

  • 第12题:

    下列程序的运行结果是()。      #include   #include   FUN(char *w,int n)  {   char temp,*s1,*s2; s1=w;  s2=w+n-1;  while(s1temp=*s1++;  *s1=*s2--;  *s2=temp;  }  }      main( )  {   char *p;  p=“1234567”;  FUN(p,strlen(p));  puts(p);  }


    正确答案:1711717

  • 第13题:

    若已包括头文件,运行下面程序的输出结果是()。chars1[10]="12345",s2[10]="

    若已包括头文件<stdio.h>和<string.h>,运行下面程序的输出结果是( )。 chars1[10]="12345",s2[10]="089",s3[]="67"; strcat(strcpy(s1,s2),s3); puts(s1);

    A.8967

    B.894567

    C.89567

    D.89567


    正确答案:A

  • 第14题:

    有以下程序段 includemain(){ char s[4][10];int i;scanf("%s%s",s[0],s[1]);gets(s[2

    有以下程序段 # include<stdio.h> main() { char s[4][10]; int i; scanf("%s%s",s[0],s[1]);gets(s[2])gets(s[3]); for(i=0;i<4;i++) puts(s[i]); } 输入数据如下,aaaa bbbb<CR>(此处<CR>代表回车符) cccc dddd<CR> 输出结果是( )

    A.aaaa bbbb cccc dddd

    B.aaaa bbbb cccc dddd

    C.aaaa bbbb cccc dddd eeee

    D.aaaa bbbb cccc dddd


    正确答案:A

  • 第15题:

    若已包括头文件,运行下列程序段时输出结果是()。int i=0;char s1[10]="ABCD

    若已包括头文件<stdio.h>和<string.h>,运行下列程序段时输出结果是( )。 int i=0; char s1[10]="ABCD",s2[10]="EFG"; strcat(s1,S2); while(s2[i++]!='\0') s2[i]=s1[i]; puts(s2);

    A.ABC

    B.ABCDEF

    C.EBCDEFG

    D.CBD


    正确答案:C
    解析: strcat(s1,s2)把s2连接到s1的后面,s1=ABCDEFG,执行while(s2[i++]!='\0')后i的值变为1,往后执行s2[i]=s1[i]时是从把s1的第二位给s2的第二位开始,把s1赋给s2。

  • 第16题:

    以下程序includemain(){char a1[80],a2[80],*s1=a1,*s2=a2; gets(s1);gets(s2) if(!s

    以下程序 #include<string.h> main() { char a1[80],a2[80],*s1=a1,*s2=a2; gets(s1);gets(s2) if(!strcmp(s1,s2))printf("*"); else printf("#"); printf("%d\n",strlen(strcat(s1,s2))); } 如果从键盘上输入: book<回车> book<空格><回车> 则输出结果是( )

    A.*8

    B.#9

    C.#6

    D.*9


    正确答案:B

  • 第17题:

    下述语句中,在字符串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。

  • 第18题:

    以下程序的输出结果是_______。includeincludefun(char*w,int n){char t,*s

    以下程序的输出结果是_______。 #include<stdio.h> #include<string.h> fun(char*w,int n) { char t,*s1,*s2; s1=w;s2=w+n-1; while(s1<s2) { t=*s1++: *sl=*s2-; *s2=t; } } main() { char*p; p="1234567"; fun(p,strlen(p)); puts(p); }

    A.1234567

    B.7654321

    C.1711717

    D.7177171


    正确答案:C
    解析:在于函数fun中,s1为字符串w的起始地址,s2为字符串的结束地址(字符'\0'除外),当执行循环结束循环,w="1711717"。

  • 第19题:

    设有如下程序段: main() { char s[4][20]; int i; scanf("%s%s",s[0],s[1]); gets(s[2]);gets(s[3]); for(i=0;i<4;i++) puts(s[i]); } 输入数据如下:(此处<CR>代表回车符) aa bb<CR> cc dd<CR> 则程序的输出结果是______。

    A.aa bb ccdd

    B.aa bb cc dd

    C.aa bb cc dd

    D.aa bb cc dd


    正确答案:C
    解析:按题目要求输入数据后,数组的第一行是字符串"aa",第二行是"bb",第三行是"ccdd",第四行没有接收到字符串。

  • 第20题:

    下面程序的运行结果是______。 include include fun(char*w,int n) { char

    下面程序的运行结果是______。 #include<stdio.h> #include<string.h> fun(char*w,int n) { char t,*s1,*s2; s1=w;s2=w+n-1; while(s1<s2) {t=*s1++;*s1=*s2--;*s2=t;} } main() { char*p; p="1234567"; fun(p,strlen(p)); puts(p); }

    A.7654321

    B.1714171

    C.1711717

    D.7177171


    正确答案:C

  • 第21题:

    试题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

  • 第22题:

    下述语句中,在字符串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

  • 第23题:


    A.V(S1)、P(S1)和V(S2)V(S3)
    B.P(S1)、V (S1)和V(S2)V(S3)
    C.V(S1)、V(S2)和P(S1)V(S3)
    D.P(S1)、V(S2)和V(S1)V(S3)

    答案:A
    解析:
    本题考查操作系统中PV操作知识点。信号量是一个整型变量,根据控制对象的不同赋不同的值。信号量可分为两类。公用信号量:实现进程间的互斥,初值为资源的数目。私用信号量:实现进程间的同步,初值=0或某个整数。

    本题中PV操作顺序如下:

    Begin BeginP1;V(S1);end;题目中a处填写V(S1);

    BeginP(S1);P2;V(S2);V(S3);end;题目中b处填写P(S1),c处填写V(S2)和V(S3)BeginP(S2);P3;V(S4);end;题目中d处填写P(S2),e处填写V(S4)

    BeginP(S3);P4;V(S5);end;题目中f处填写P(S3),

    BeginP(S4);P(S5);P5;end;题目中g处填写P(S4)和P(S5)。得到本题选项

  • 第24题:

    填空题
    下列程序的运行结果是()。      #include   #include   FUN(char *w,int n)  {   char temp,*s1,*s2; s1=w;  s2=w+n-1;  while(s1temp=*s1++;  *s1=*s2--;  *s2=temp;  }  }      main( )  {   char *p;  p=“1234567”;  FUN(p,strlen(p));  puts(p);  }

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