更多"设有下列的程序段: char str[]='Hello World'"的相关试题:
[填空题]设有下列的程序段:
char str[]="Hello";
char*ptr;
ptr=str;
执行上面的程序段后,*(ptr+5)的值为______。
[填空题]设有下列的程序段:
char str[]="Hello";
char*ptr;
ptr=-str;
执行上面的程序段后,*(ptr+5)的值为______。
[填空题]设有下列的程序段;
char str[]="Hello";
char *ptr;
ptr=str;
执行上面的程序段后,*(ptr+5)的值为______。
[单项选择]设有如下的程序段:
char str[]="Hello";
char *ptr;
ptr=str;
执行完上面的程序段后,*(ptr+5)的值为( )。
[填空题]设有下列的程序段:
char str[]="Hello";
char *ptr;
ptr=str;
执行上面的程序段后,*(ptr+5)的值为
[单项选择]设有如下的程序段:
char str[]="HelloWorld";
char*ptr;
ptr=str;
执行上面的程序段后,*(ptr+10)的值为( )。
[单项选择]设有下列的程序段:
char str[]="HelloWorld";
char*ptr;
ptr=str;
执行上面的程序段后,*(ptr+10)的值为()。
A. '/0'
B. '0'
C. 不确定的值
D. '0'的地址
[单项选择]设char str1[11]="HELLO,",str2[10]=“world”;则执行语句
cout<<strlen(strcpy(str1,str2)));后的输出结果是 ______。
A. 12
B. 11
C. 7
D. 5
[单项选择]有下面的程序段:
char str[10],ch[]="China";
str=ch; printf("%s",str);
则运行时______。
A. 将输出China
B. 将输出Ch
C. 将输出Chi
D. 编译出错
[单项选择]请读程序段:
char str[]="ABCD",*p=str
print("%d/n",*(p+4));
程序段的输出结果是()。
A. 68
B. O
C. 字符'D'的地址
D. 不确定的值
[单项选择]设有以下程序段:
struct MP3
char name[20];
char color;
float price;
std,*ptr;
ptr=&std;
若要引用结构体变量std中的color成员,写法错误的是( )。
A. std.color
B. ptr→color
C. std→color
D. (*ptr).color
[单项选择]下面程序段的输出结果是( )。
char str[]="ABC",*p=str;
Printf("%d/n",*(p+3));
[单项选择]下面程序段的运行结果是()
char str[]="ABC",*p=str;
printf("%d/n",*(p+3));
A. 67
B. 0
C. 字符'C'的地址
D. 字符'C'
[填空题]下列程序段的运行结果是______。
char str[]="ABCD",*p=str;
printf("%d/n",*(p+3));
[简答题]【程序说明】
函数int commstr(char * str1,char * str2,int * sublen)从两已知字符串str1和str2中,找出它们的所有最长的公共子串。如果最长公共子串不止1个,函数将把它们全部找出并输出。约定空串不作为公共子串。
函数将最长公共子串的长度送入由参数sublen所指的变量中,并返回字符串str1和str2的最长公共子串的个数。如果字符串str1和str2没有公共子串,约定最长公共子串的个数和最长公共子串的长度均为0。
【程序】
int strlen(char * s)
{char *t=s;
while( * ++);
return t-s-1;
}
int commstr(char) *str1,char *str2,int *sublen
{ char*s1, *s2;
int count=0,len1 ,len2,k,j,i,p;
len1:=strlen(str1)
len2 = strlen(str2);
if(len1>len2)
{s1=str1 ;s2=str2;}
else {len2 = len1;s1 = str2;s2 = str1;}
for(j=len2;j>0;j--) /*从可能最长子串开始寻找*/
{for(k=0; (1) <:len2;k++) /*k为子串s2的开始位置*/
{for(i=0;s1[ (2) ]!=’/0’;i++;) /*i为子串s1的开始位置*/
{ /*s1的子串与s2的子串比较*/
for (p=0;p<j)&& (3) ;p++);
if ( (4) ) /*如果两子串相同*/
{for(p=0);p<j;p++} /*输出子串*/
printf ("%c",s2[k+p]);
printf ("/n");
count++;/*计数增1 */
}