编写函数strcat(char *str1,char *str2,char *str3),将字符串str1和str2连接后放入str3中,并编写main()调用上述函数实现2个字符串的连接。
时间: 2023-05-31 08:20:21 浏览: 224
### 回答1:
这段代码是一个名为strcat的函数,其功能是将两个字符串str1和str2连接起来,并将结果存储在一个字符串str3中。主函数main调用该函数,将两个字符串作为参数传递给该函数,然后将结果字符串输出。该函数是将字符串拼接的常见方式之一。
### 回答2:
问题要求编写一个函数strcat(char *str1, char *str2, char *str3),将字符串str1和str2连接后放入str3中,并编写main()函数调用上述函数实现2个字符串的连接。
这里给出函数的实现方法:
```c++
#include <iostream>
#include <string.h>
using namespace std;
void strcat(char *str1, char *str2, char *str3) {
int len1 = strlen(str1);
int len2 = strlen(str2);
int i, j = 0;
for (i = 0; i < len1; ++i) {
str3[i] = str1[i];
}
for (i = len1; i < len1 + len2; ++i) {
str3[i] = str2[j++];
}
str3[i] = '\0'; // 加上字符串的结束标志
}
int main() {
char str1[100], str2[100], str3[200];
cout << "请输入第一个字符串:" << endl;
cin >> str1;
cout << "请输入第二个字符串:" << endl;
cin >> str2;
strcat(str1, str2, str3);
cout << "连接后的字符串为:" << str3 << endl;
return 0;
}
```
首先我们定义了一个strcat函数,该函数接受三个参数:str1代表第一个字符串,str2代表第二个字符串,str3代表将要返回的字符串。该函数的实现方法为:先计算出str1和str2的长度,然后将str1中的字符复制到str3中,接着再将str2中的字符复制到str3中,最后加上字符串的结束标志'\0'。
在main函数中,我们先定义了3个字符数组来存储输入的两个字符串和连接后的结果。接着,我们调用strcat函数将str1和str2合并,并将结果存储在str3中,最后输出str3即为连接后的结果。
综上所述,以上程序实现了功能,可将两个字符串连接起来,并输出连接后的结果。
### 回答3:
函数strcat(char *str1,char *str2,char *str3)的作用是将两个字符串str1和str2连接起来,并将结果存放在str3中。其中str1和str2是所要连接的字符串,str3是存放结果的字符串,其函数原型为:
char *strcat(char *dest, const char *src);
该函数在执行时,首先查找dest字符串的尾部,并将src字符串中的字符逐笔复制到dest字符串中,直到遇到字符串结束符号 \0 为止,最后返回dest指针。
根据题意,编写函数strcat(char *str1,char *str2,char *str3)需定义如下:
```C
void strcat(char *str1, char *str2, char *str3) {
int i,j;
for(i = 0; str1[i] != '\0'; i++) {
str3[i] = str1[i]; //将str1复制到str3中
}
for(j = 0; str2[j] != '\0'; j++) {
str3[i+j] = str2[j]; //将str2接在str1后面复制到str3中
}
str3[i+j] = '\0'; //标记字符串结束符
}
```
该函数的实现很简单,首先遍历str1,将其复制到str3中,然后再遍历str2,将其接在str1的尾部,并继续复制到str3中,最后给str3添加结束符。
接下来,编写main()函数,调用strcat()函数来实现两个字符串的连接。
```C
#include<stdio.h>
#include<string.h>
void strcat(char *str1, char *str2, char *str3);
int main() {
char str1[100], str2[100], str3[200];
printf("请输入第一个字符串:");
scanf("%s", str1);
printf("请输入第二个字符串:");
scanf("%s", str2);
strcat(str1, str2, str3);
printf("两个字符串连接后的结果是:%s\n", str3);
return 0;
}
```
在main()函数中,首先声明了三个字符串变量str1、str2和str3,用来存储用户输入的两个字符串和两个字符串连接后的结果。然后,使用scanf()函数从用户处分别获取两个字符串str1和str2,并调用strcat()函数将其连接后的结果存放在str3中。最后,输出连接后的字符串。
这样,就完成了编写函数strcat(char *str1,char *str2,char *str3)并通过main()函数调用实现两个字符串连接的任务。
阅读全文