请问一下这个程序应该怎么写 c语言 10
编写字符串处理函数程序要求:a)编写函数,实现字符串的拷贝功能原型:char*myStrcpy(char*strDestination,constchar*strSour...
编写字符串处理函数
程序要求:
a) 编写函数,实现字符串的拷贝功能
原型:char *myStrcpy( char *strDestination, const char *strSource );
输入:char *strDestination: 目标串
const char *strSource:源串
返回:成功,返回目标串的指针;失败返回NULL
b) 编写函数,实现求字符串长度
原型:int myStrlen(char *string);
输入:char *string:需要求长度的字符串
返回:字符串的长度
c) 编写函数,实现去掉末尾空格
原型:void myTrimRight(char * string);
输入:char *string:待处理的字符串,处理的结果串
返回:无
d) 编写主程序,对三个函数进行测试。 展开
程序要求:
a) 编写函数,实现字符串的拷贝功能
原型:char *myStrcpy( char *strDestination, const char *strSource );
输入:char *strDestination: 目标串
const char *strSource:源串
返回:成功,返回目标串的指针;失败返回NULL
b) 编写函数,实现求字符串长度
原型:int myStrlen(char *string);
输入:char *string:需要求长度的字符串
返回:字符串的长度
c) 编写函数,实现去掉末尾空格
原型:void myTrimRight(char * string);
输入:char *string:待处理的字符串,处理的结果串
返回:无
d) 编写主程序,对三个函数进行测试。 展开
1个回答
展开全部
(a)
char* mystrcpy(char *dest, const char *str){
if(dest==NULL || str==NULL){
return NULL;
}
char *tmp = dest;
while(*str != '\0'){
*tmp = *str;
tmp++;
str++;
}
*tmp = '\0';
return dest;
}
(b)
int myStrlen(const char *string){
int len = 0;
while(string[len] != '\0'){
len++;
}
return len;
}
(c)
void myTrimRight(char* str){
while(*str!='\0'){
str++;
}
char *tail = str; // 指向字符串尾部
tail--;
while(*tail == ' '){
*tail = '\0';
tail--;
}
}
(d)
int main(void)
{
char str[30];
printf("%s\n",strcpy(str,"123 456 789 "));
printf("%d\n",myStrlen(str));
myTrimRight(str);
printf("%d\n",myStrlen(str));
return 0;
}
char* mystrcpy(char *dest, const char *str){
if(dest==NULL || str==NULL){
return NULL;
}
char *tmp = dest;
while(*str != '\0'){
*tmp = *str;
tmp++;
str++;
}
*tmp = '\0';
return dest;
}
(b)
int myStrlen(const char *string){
int len = 0;
while(string[len] != '\0'){
len++;
}
return len;
}
(c)
void myTrimRight(char* str){
while(*str!='\0'){
str++;
}
char *tail = str; // 指向字符串尾部
tail--;
while(*tail == ' '){
*tail = '\0';
tail--;
}
}
(d)
int main(void)
{
char str[30];
printf("%s\n",strcpy(str,"123 456 789 "));
printf("%d\n",myStrlen(str));
myTrimRight(str);
printf("%d\n",myStrlen(str));
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询