以下程序的输出结果是( )。 char str[15]=”hello!”; printf(“%d\n”,strlen(str)); A.15##

题目
以下程序的输出结果是( )。 char str[15]=”hello!”; printf(“%d\n”,strlen(str)); A.15

以下程序的输出结果是( )。 char str[15]=”hello!”; printf(“%d\n”,strlen(str));

A.15

B.14

C.7

D.6

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下程序片段的输出结果是 char str[]="12n012hello"; printf("%d",strlen(str));

A.15

B.10

C.12

D.11


D 解析:abc后的四个字符都是由反斜线引出的转义字符,\\n是换行符,\\012也是换行符,\表示反斜线本身,\\'表示双引号,因此,一共是7个字符。

第2题:

以下程序的输出结果是【 】。includeincludechar*fun(char*t){ char *p=t;retur

以下程序的输出结果是【 】。

include <stdio.h>

include <string.h>

char *fun(char *t)

{ char *p=t;

return (p+strlen(t)/2);

}

main()

{ char *str="abcdefgh";

str=ftm(str);

puts(str);

}


正确答案:
efgh 解析:本题考查的知识点是:字符指针。题目中的fun()函数,通过strlen()库函数得到形参t所指字符串的长度。然后返回t所指字符串首地址值加上该长度值的一半。所以fun()函数的作用就是返回所给字符串的中间位置。故最后通过puts()输出的字符串为"efgh"。

第3题:

有以下程序: include include main() { char str[ ]={"Hello,Beijing"}; printf("%d,%d\n",strlen(str),sizeof(str)); } 程序的运行结果是( )。

A.13,13

B.13,14

C.13,15

D.14,15


答案:B
解析:strlen返回字符串的长度,不包含字符串末尾的结束字符′\0′,结果为13;sizeof返回字符串所占存储空间的大小,由于字符串最后要加上一个′\0′,所以结果为13+1=14。

第4题:

有以下程序: include main( ) { char *p="abcde\0ghjik\0"; printf("%d\n",str

有以下程序: #include<string.h> main( ) { char *p="abcde\0ghjik\0"; printf("%d\n",strlen(p) ); } 程序运行后的输出结果是

A.12

B.15

C.6

D.5


正确答案:D

第5题:

有以下程序

inculde <stdio.h>

inculde <string.h>

void Fun(char*str)

{ char temp;int n,I;

n=strlen(str);

temp=str[n-1];

For(i=n-1;i>0;i--) str[i]=str[i-1];

str[0]=temp;

}

main()

{ char s[50];

ScanF(“%s”,s);Fun(s);printF(“%s\n”,s);}

程序运行后输入:aBcDeF<回车>,则输出结果是【 】


正确答案:fabcde
fabcde 解析:在函数fun中,先求出字符串str的长度,并将最后一个字符暂存到temp中,然后使用循环语句将所有字符向右移动一个位置,最后将temp中的字符放到字符串的第1个位置,所以结果为fabcde。

第6题:

有以下程序includemain(){charstr[][20]={"Hello","Beijing"},*p=str;printf("%d\n",

有以下程序 #include <string.h> main() {char str[][20]={"Hello","Beijing"},*p=str; printf("%d\n",strlen(p+20)); } 程序运行后的输出结果是

A.0

B.5

C.7

D.20


正确答案:C
解析:二维数组的初始化及库函数strlen()的应用,主函数中定义了一个二维字符数组并初始化,初始化后的结果为str[0]=“Hello”、str[1]=“Beijing”,然后定义一个字符指针变量p并让它指向数组的首地址,即指向str[0],而在C语言中无论是一维还是多维数组,其元素在内存中都是顺序存放的,故p+20后指针指向str[1],所以strlen(p +20);返回的是str[1]中的字符串的长度,即Beijing的长度为7,所以最后输出的值为7。

第7题:

有以下程序:includemain(){charstr[][20]={"Hello","Beijing"}*p=str;printf("%\n",s

有以下程序: #include <string.h> main() { char str[][20]={"Hello","Beijing"}*p=str; printf("%\n",strlen(p+20)); } 程序运行后的输出结果是

A.0

B.5

C.7

D.20


正确答案:C
解析:本题考核的知识点是二维数组的初始化及库函数strlen()的应用。主函数中定义了一个二维字符数组并初始化,初始化后的结果为str[0]="Hello",str[1]="Beijing",然后定义一个字符指针变量p并让它指向数组的首地址,即指向str[0],而在C语言中无论是一维还是多维数组,其元素在内存中都是顺序存放的,故p+20后指针指向str[1],所以strlen(P+20);返回的是str[1]中的字符串的长度,即Beijing的长度为7,所以最后输出的值为7,所以,4个选项中选项C符合题意。

第8题:

有以下程序:includemain(){ char str[][20]={"Hello","Beijing"),*p=str[0];printf("

有以下程序: #include<string.h> main() { char str[][20]={"Hello","Beijing"),*p=str[0]; printf("%d\n",strlen(p+20)); } 程序运行后的输出结果是( )。

A.0

B.5

C.7

D.20


正确答案:C
解析:主函数中定义了一个二维字符数组并初始化,初始化后的结果为str[0]="Hello"、str[1]="Beijng",然后定义一个字符指针变量p并让它指向str[0],即指向数组的首地址,而在C语言中无论是一维还是多维数组,其元素在内存中都是顺序存放的,故p+20后指针指向str[1],所以strlen(p+20);返回的是str[1]中字符串的长度,即"Beijng"的长度7,故4个选项中选项C符合题意。

第9题:

有以下程序: includemain(){ char str[][20]={"Hello","Beijing"},*p=str;printf("%

有以下程序: # include<string.h> main() { char str[][20]={"Hello","Beijing"},*p=str; printf("%d\n",strlen(p+20)); } 程序运行后的输出结果是 ______。

A.0

B.5

C.7

D.20


正确答案:C
解析:本题中定义了一个2×20的二维字符数组str,并且初始化为str[0]="Hello",str[1]="Beijing",p是指向 char型的指针变量,并指向str数组的首地址,strlen(p+20)=strlen(str[1])=7。