更多“char s[]="Confidence";则s的字符串长度是(”相关问题
  • 第1题:

    有以下函数 int fun(char *s) { char *t=s; while(*t++); return(t-s); } 该函数的功能是

    A.比较两个字符串的大小

    B.计算s所指字符串占用内存字节的个数

    C.计算s所指字符串的长度

    D.将s所指字符串复制到字符串t中


    正确答案:B
    解析:循环语句while(*t++);执行完时,指针变量t就指向了字符中结束符‘\o’之后的位置,所以语句return(t-s);返回的就是字符串s所用内存的字节个数。

  • 第2题:

    设有下面的程序段:

    char s[]="china"; char*p; p=s;

    则下列叙述正确的是

    A.s和p完全相同

    B.数组s中的内容和指针变量p中的内容相同

    C.s数组长度和p所指向的字符串长度相等

    D.*p与s[0]相等


    正确答案:D
    解析:考查的是字符指针和字符数组的区别。选项A)中,s为数组名,是一个常量地址,而指针p为一个字符变量,不能说两者完全相同,所以选项A)错误。选项B)和C)的说法都不严谨,只有选项D)的说法正确。

  • 第3题:

    下面函数的功能是()sss(s,t)char*s,*t;{ while((*s)&&(*t)&&(*t++==*s++));return(*s- * t); }

    A.求字符串的长度

    B.比较两个字符串的大小

    C.将字符串s复制到字符串t中

    D.将字符串s接续到字符串t中


    正确答案:B

  • 第4题:

    下面能正确进行字符串赋值操作的是

    A.char s[5]={"ABCDE"};

    B.char s[5]={'A','B','C','D','E'};

    C.char*s;s="ABCDE";

    D.char*s;char a;scanf("%s",&s);


    正确答案:C
    解析:如果一个字符数组用来存储字符串,那么在定义该字符数组时,数组的大小应该比它将要实际存放的字符串长度大1,所以选项A)和B)错。选项D)e本身就是一个字符指针,不需再取地址。

  • 第5题:

    下列能正确进行字符串赋值的是( )。

    A.chars[5]={"ABCDE"};

    B.char s[5]+{'A','B','C','D','E'),

    C.char*s;s="ABCDE";

    D.char*s;printf("%S''S);


    正确答案:C
    解析:字符串存储要有结束符“\0”且要占用一个空间,选项A)、B)的空间不够;printf用来输出字符,不能输入字符串。

  • 第6题:

    有以下函数: int fun(char * s) {char * t=s; while(*t++); return(t-s) 该函数的功能是______。

    A.比较两个字符串的大小

    B.计算s所指字符串占用内存字节个数

    C.计算s所指字符串的长度

    D.将s所指字符串复制到字符串t中


    正确答案:C
    解析: 定义一个字符指针t,并将字符指针s的首地址赋给字符指针t;通过while语句将指针t往下移到字符串最后一个字符后面的地址,指针s始终指向首地址,将末地址减去首地址可以计算出字符串的长度。

  • 第7题:

    下列能正确进行字符串赋值的是( )。

    A.char s[5]={"ABCDE"};

    B.char s[5]={A,B,C,D,E}; 、

    C.char*S;S="ABCDE";

    D.char*s;printf("%《",s);


    正确答案:C
    选项A、B的空间不够;字符串存储要有结束符\0,且要占用一个空间,printf用来输出字符,不能输入字符串。

  • 第8题:

    若有下面的程序段: chars[]="china";char *p;p=s;则下列叙述正确的是( )。

    A.s和p完全相同

    B.数组s中的内容和指针变量p中的内容相等

    C.数组s的长度和p所指向的字符串长度相等

    D.*p与s[0]相等


    正确答案:D
    解析:字符型指针变量p中存放的是“china"的首地址,所以选项A)和B)错误;s数组长度为6,而p所指向的字符串长度为5,二者不相等,排除选项C)。

  • 第9题:

    以下能将字符串,you are luck!正确读入的语句组是( )

    A.char s[80]; scanf("%s",s);

    B.char *s: scanf("%s",s);

    C.char s[80]; gets(s);

    D.char *s; gets(3);


    正确答案:C

  • 第10题:

    语句()能正确完成赋字符串的功能。

    • A、chars[4];s[0]=“string”
    • B、char*s;get(s)
    • C、char*s[]=“string”
    • D、char*s;strcpy(s,“string”)

    正确答案:C

  • 第11题:

    单选题
    有以下函数 int fun(char *s) {  char *t=s;  while(*t++);  return(t-s); } 该函数的功能是(  )。
    A

    计算s所指字符串占用内存字节的个数

    B

    比较两个字符串的大小

    C

    计算s所指字符串的长度

    D

    将s所指字符串复制到字符串t中


    正确答案: A
    解析:
    本题中,首先让t指向形参s,然后通过一个循环体为空的while循环,将t逐次后移,直到其所指内容为'\0'(字符串结束标志)。此时t仍然会被增1,所以从循环出来,t指向的是s所指字符串的结束标志的后一个字节。因此,返回的t-s是s所指字符串占用内存字节的个数,A项正确。而C项所说的长度并不包括字符串结束标志位,错误。答案选择A选项。

  • 第12题:

    单选题
    有以下函数:int fun(char *s,char *t){ while((*s)&&(*t)&&(*t++==*s++)); return (*s-*t);}函数的功能是(  )。
    A

    求字符串的长度

    B

    比较两个字符串的大小

    C

    将字符串s复制到字符串t中

    D

    连接字符串s和字符串t


    正确答案: C
    解析:
    函数体执行过程为:将两个字符串首地址传入函数,分别赋给指针s与t,在函数体内s与t所指向的字符串的字符不为'\0'时,判断两个指针指向的字符是否相同,若相同则两个指针分别加一指向下一个字符,若不同则退出while循环,返回不相同的字符的ASCII码值之差。返回值大于0表示字符串s>t;返回值小于0表示s<t;返回值为0,表示s=t。函数实现了比较两个字符串大小的功能。答案选择B选项。

  • 第13题:

    下面能正确进行字符串赋值操作的是

    A.char s[5]={"ABCDE"};

    B.char s[5]={′A′,′B′,′C′,′D′,′E′};

    C.char *s; s="ABCDE";

    D.char *s;scanf("%s",s);


    正确答案:C
    解析:考查了一维字符数组的定义和初始化。选项A)和B)定义的数组空间太小,至少应该为6个字符的长度才可以。选项D)中的指针s未赋初值,所以指向一个不确定的地址,因而不能用scanf输入数据到这一指针所指向的地址中。

  • 第14题:

    下列能正确进行字符串赋值的是( )。

    A.char s[5]={"ABCDE"};

    B.char s[5]={'A','B','C','D','E'};

    C.char*s;s="ABCDE";

    D.char*s;printf("%s",s);


    正确答案:C
    解析:字符串存储要有结束符“\0”且要占用一个空间,选项A)、B的空间不够;primf用来输出字符,不能输入字符串。

  • 第15题:

    下面各语句中,能正确进行赋字符串操作的语句是

    A.char s[5]= { "ABCDE" };

    B.char s[5]= { 'A' ,' B' ,' C' ,' D' ,' E' };

    C.char *s; s = "ABCBE";

    D.char *s; scanf("%s", s);


    正确答案:C

  • 第16题:

    以下说法中错误的是

    A.strcpy(A,B)函数是将A字符串的内容复制到B字符串中

    B.strlen(cha*s)返回字符串S的长度,未尾的字符不计算在内

    C.char a[20]="string";中字符串长度为6

    D.strstr(S1,S2)函数在字符串S1中从左边开始查找字符串S2,若查找成功则返回S2在S1中首次出现的位置,否则返回NULL,如果S2为"",则返回S1。


    正确答案:A
    解析:strcpy( )函数的一般形式为:strcpy(to,from),该函数将from字符串中的内容复制到to字符串中,故A项错误。

  • 第17题:

    下列函数的功能是set(s,t){ char *s,*t; while((*s)&&(*t)&&(*t++==*s++)); return(*s-*t);}A.求字符串的长度B.比较两字符串的大小C.将字符串s复制到字符串t中D.将字符串s连接到字符串t后


    正确答案:B
    在本题中,从题目给出的四个选项我们就可以知道,程序是对两个字符串进行操作。下面将具体分析程序。
    程序首先定义两个字符型的指针变量s和t,从后面的程序中不难看出这两个指针变量应该用来对两个字符串进行操作处理。用循环来对字符串进行处理时,循环继续的条件是指针变量s和指针变量t所指向的结果值不为0,且两结果值相等。很显然,指针变量s和指针变量t所指向的结果值不为0,说明两字符串没有结束,只有结束时才为0,而结果值相等说明两字符相等,如果不等,循环则结束,此时程序将要求返回不等元素之间的差值,从差值的正负关系我们可以判断出哪个元素更大。综上所述,程序段的作用是用来比较两字符串的大小。因此,本题正确的答案选B。

  • 第18题:

    下面函数的功能是( )。 sss(s,t) char*s,*t; {while((*s)&&(*t)&&(*t++==*s++)); return(*s-*t): }

    A.将字符串s复制到字符串t中

    B.比较两个字符串的火小

    C.求字符串的长度

    D.将字符书s接续到字符串t中


    正确答案:B

  • 第19题:

    下面能正确进行字符串赋值操作的语句是______。

    A.char s[5]={"ABCDE"};

    B.char s[5] ={'a','b','c','d','e'};

    C.char *s;s="ABCDEF"

    D.char *s;scanf("%s",s);


    正确答案:C

  • 第20题:

    以下能正确进行字符串赋值、赋初值的语句是______。

    A.char s[5]:{'a','e','i','o','u'};

    B.char *s; s="good";

    C.char s[5]="good";

    D.char s[5]; s="good";


    正确答案:C

  • 第21题:

    下列能够正确进行字符串赋值操作的是()。

    • A、char s[5]={“ABCDE”};
    • B、char *s; s=“ABCDE”;
    • C、char s[5]={‘A’,‘B’,‘C’,‘D’,‘E’};
    • D、char *s; scanf(“%s”,s);

    正确答案:B

  • 第22题:

    char s[]="Confidence";则s的字符串长度是()。

    • A、9
    • B、10
    • C、11
    • D、12

    正确答案:B

  • 第23题:

    单选题
    char s[]="Confidence";则s的字符串长度是()。
    A

    9

    B

    10

    C

    11

    D

    12


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

  • 第24题:

    单选题
    有以下函数 int aaa(char *s) {  char *t=s;  while(*t++);  t--;  return (t-s); } 以下关于aaa函数功能叙述正确的是(  )。
    A

    求字符串s的长度

    B

    比较两个串的大小

    C

    将串s复制到串t

    D

    求字符串s所占字节数


    正确答案: B
    解析:
    aaa函数中,首先定义了一个字符指针t指向形参s,然后通过一个while循环让指针t不断递增,直到t指向字符串结束标志处。当t指向结束标志处时,由于后缀++运算符的原因,它还会被再递增1,此时t指向字符串结束符'\0'后面一个单元,所以接下来的t--;语句让它回到结束标志处。最后返回t-s,因为s还是指向字符串第1个字符处,而t指向字符串结束符,故返回值为字符串的长度值。答案选择A选项。