更多"以下不能将s所指字符串正确复制到t所指存储空间的是( )。"的相关试题:
[单项选择]以下不能将S所指字符串正确复制到t所指存储空间的是
A. while(*t=*s) t++; s++; B) for(i=0; t[i]=s[i];i++); C) do*t++=*s++; while(*s); D) for(i= 0,j=0;t[i++]=s[j++];);
[单项选择]以下不能将s所指字符串正确复制到t所指存储空间的是( )。
A. while(*t= *s)t++;s++;)
B. for(i=0;t[i]=s[i];i++);
C. do*t++=*s++;while(*s);
D. for(i=0,j=0;t[i++]=s[j++];);
[填空题]以下函数 sstrcat( )的功能是实现字符串的连接,即将 t 所指字符串复制到 s 所指 字符串的尾部。例如:s 所指字符串为 abcd,t 所指字符串为 efgh,函数调用后
s 所指字符串为 abcdefgh。请填空。
#include
void sstrcat(char *s,char *t)
{ int n;
n=strlen(s);
while(*(s+n)=_________){s++; t++;}
}
[填空题]以下sstrcpy( )函数实现字符串复制,即将t所指字符串复制到s所指内存空间中,形成一个新字符串s。请填空。
void sstrcpy(char *s,char *t)
while( *s++= );
main( )
char strl[100],str2[]="abcdefgh";
sstrcpy(str1,str2);
printf("%s//n",str1);
[填空题]
以下函数sstrcat( )的功能是实现字符串的连接,即将t所指字符串复制到s所指字符串的尾部。例如:s所指字符串为abcd,t所指字符串为efgh,函数调用后s所指字符串为abcdefgh。请填空。
#include <string.h>
void sstrcat(char *s,char *t)
{int n;
n=strlen(s);
while(*(s+n)=(){s++;t++;}
}
[填空题]
以下函数fun的功能是返回str所指字符串中以形参c中字符开头的后续字符串的首地址,例如:str所指字符串为:Hello!,c中的字符为e,则函数返回字符串:ello!的首地址。若str所指字符串为空串或不包含c中的字符,则函数返回NULL。请填空。
char *fun(char *str, char c)
{int n=0;char *p=str;
if(p!=NULL)
while(p[n]!=c&&p[n]!=’/0’) n++;
if(p[n]=’/0’) return NULL;
return(());
}
[填空题]
函数strcmp( )的功能是对两个字符串进行比较,当s所指字符串和t所指字符串相等时,返回值为0;
当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于
0(功能等同于库函数strcmp( ) ),请填空。
#include <stdio.h>
int strcmp ( chat * s, char * t)
{ while( * s && * t && * s= 【15】
{ s++;t++; }
return 【16】 ;
}
[填空题]以下函数 fun 的功能是返回 str 所指字符串中以形参 c 中字符开头的后续字符串的首 地址,例如:str 所指字符串为:Hello!,c 中的字符为 e,则函数返回字符串:ello!的首地址。若 str 所指字符串为空串或不包含 c 中的字符,则函数返回 NULL。请填空。
char *fun(char *str, char c)
{ int n=0;char *p=str;
if(p!=NULL)
while(p[n]!=c&&p[n]!= ’’/0’’) n++;
if(p[n]== ’’/0’’) return NULL;
return( _________);
}
[填空题]
以下sstrcpy( )函数实现字符串复制,即将t所指字符串复制到s所指向内存空间中,形成一个新的字符串s。请填空。
void sstrcpy(char *s,char *t)
{ while(*s++= 【15】 );}
main( )
{ char str1[100],str2[ ]=”abcdefgh”;
sstrcpy(str1,str2);
printf(“%s/n”,str1);}
[单项选择]s1和s2已正确定义并分别指向两个字符串。若要求:当s1所指字符串大于s2所指字符串时,执行语句S;则以下选项中正确的是( )。
A. if(sl>s2)S;
B. if(strcmp(s1,s2))S;
C. if(strcmp(s2,s1>0)S;
D. if(strcmp)(s1,s2)>0)S;
[简答题]下列给定程序中函数fun的功能是:统计substr所指的字符串在str所指的字符串中出现的次数。
例如,若字符串为aass 1kaaas,子字符串为as,则应输出2。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include <stdio.h>
int fun(char *str, char *substr)
{ int i, j, k, num=0;
/********** found**********/
for(i=0, str[i], i++)
for(j=i, k=0; substr[k]==str[j]; k++, j++)
/********** found**********/
If(substr[k+1]==’/0’)
{ num++;
break;
}
return num;
}
main( )
{
char str[80], substr[80];
printf("Input a string:");
gets(str);
printf("Input a substfing: ");
gets(substr);
printf("%d/n", fun(str, substr));
}
[单项选择]以下程序中函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址 #include <stdio.h> #include <string.h> char *scmp(char *s1, char *s2) { if(strcmp(s1,s2)<0) return(s1); else return(s2); } main( ) { int i; char string[20], str[3][20]; for(i=0;i<3;i++) gets(str[i]); strcpy(string,scmp(str[0],str[1])); /*库函数strcpy对字符串进行复制*/ strcpy(string,scmp(string,str[2])); printf("%s/n",string); } 若运行时依次输入:abcd、abba和abc三个字符串,则输出结果为()
A. abcd
B. abba
C. abc
D. abca
[单项选择]以下程序中函数scmp的功能是返回形参指针sl和s2所指字符串中较小字符串的首地址:
#include <stdio.h>
#include <string.h>
char *scmp (char *s1, char *s2)
if(strcmp(s1,s2)>0)
return(s1);
else return(s2);
void main( )
int i;char string[20], str[3][20];
for(i=0;i<3;i++) gets(str[i]);
strcpy(string,scmp(str[0],str[1]));/*库函数strcpy对字符串进行复制*/
strcpy(string,scmp(string,str[2]));
printf("%s/n",string);
若运行时依次输入abcd、abba和abc三个字符串,则输出结果为( )。
A. abcd
B. abba
C. abc
D. abca
[单项选择]以下程序中函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址
#include <stdio.h>
#include <string.h>
char *scmp(char *s1, char *s2)
{ if(strcmp(s1,s2)<0)
return(s1);
else return(s2);
}
main( )
{ int i; char string[20], str[3][20];
for(i=0;i<3;i++) gets(str[i]);
strcpy(string,scmp(str[0],str[1])); /*库函数strcpy对字符串进行复制*/
strcpy(string,scmp(string,str[2]));
printf("%s/n",string);
}
若运行时依次输入:abcd、abba和abc三个字符串,则输出结果为( )。
A. abcd
B. abba
C. abc
D. abca
[单项选择]以下程序中函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址。
#include <stdio.h>
#include <string.h>
char *scmp(char*s1,char*s2)
if(strcmp(s1,s2)<0) return(s1);
else return(s2);
main( )
int i; char string[20],str[3][20];
for(i=0;i<3;i++) gets(str[i]);
strcpy(string,scmp(str[0],str[1])); /*库函数strcpy对字符串进行复制*/
strcpy(string,scmp(string,str[2]));
printf("%s/n",string);
若运行时依次输入:abcd、abba和abc三个字符串,则输出结果为( )。
A. abcd
B. abba
C. abc
D. baca