更多“若有以下定义和语句:char*s1="12345",*s2="1234";printf("%d\n",strlen(strcpy(s1,s2)));则输出 ”相关问题
  • 第1题:

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

  • 第2题:

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

  • 第3题:

    若有以下定义和语句 char s1[10]="abcd!",*s2="n123"; printf("%d %dn",strlen(s1),strlen(s2)); 则输出结果是

    A.5 5

    B.105

    C.107

    D.58


    A

  • 第4题:

    ( 31 )若有以下定义和语句

    char s1[10]= " abcd! " ,*s2= " \n123\\ ";

    printf ( " %d %d\n ", strlen ( s1 ) ,strlen ( s2 ) ) ;

    则输出结果是

    A ) 5 5

    B ) 10 5

    C ) 10 7

    D ) 5 8


    正确答案:A

     

  • 第5题:

    若有以下定义和语句: char s1[]=″12345″,s2[]=″1234″; printf(″%dn″,strlen(strcpy(s1,s2))); 则输出结果是()

    A.4

    B.5

    C.9

    D.10


    A