编写程序,将两个字符串连接起来,不要使用strcat函数。
时间: 2023-06-05 15:47:39 浏览: 344
题目意思:请编写程序,将两个字符串连接起来,不要使用strcat函数。
解释:题目要求我们将两个字符串连接起来,但是不能使用strcat函数。strcat函数是C语言中的一个字符串操作函数,可以将一个字符串连接到另一个字符串的末尾。
那么我们可以使用循环和指针来实现字符串的连接。首先定义一个新的字符串数组result,然后循环将两个字符串的字符逐个复制到result数组中,直到两个字符串全部复制完毕。
具体实现代码如下:
```c
#include<stdio.h>
#include<string.h>
int main()
{
char s1[] = "hello";
char s2[] = "world";
char result[12];
int i = 0, j = 0;
while(s1[i] != '\0')
{
result[i] = s1[i];
i++;
}
while(s2[j] != '\0')
{
result[i+j] = s2[j];
j++;
}
result[i+j] = '\0';
printf("%s\n", result);
return 0;
}
```
运行结果:
```
helloworld
```
这个程序将s1和s2两个字符串连接到了一起,并输出了结果。
相关问题
编写一个程序将两个字符串连接起来,不用strcat函数
好的,以下是一个示例程序,可以将两个字符串连接起来:
```c
#include <stdio.h>
void string_concat(char s1[], char s2[]) {
int i, j;
for(i = 0; s1[i] != '\0'; i++);
for(j = 0; s2[j] != '\0'; j++) {
s1[i + j] = s2[j];
}
s1[i + j] = '\0';
}
int main() {
char str1[100], str2[100];
printf("请输入第一个字符串:");
scanf("%s", str1);
printf("请输入第二个字符串:");
scanf("%s", str2);
string_concat(str1, str2);
printf("连接后的字符串为:%s\n", str1);
return 0;
}
```
这个程序中,我们定义了一个 `string_concat` 函数,用来实现字符串的连接。该函数接受两个字符串作为参数,将第二个字符串连接到第一个字符串的末尾。具体实现可以分为以下几个步骤:
1. 定义两个变量 `i` 和 `j`,分别用于遍历第一个字符串和第二个字符串。
2. 遍历第一个字符串,直到找到字符串末尾的空字符 `\0`。
3. 遍历第二个字符串,将每个字符逐一复制到第一个字符串的末尾。
4. 在第一个字符串的末尾添加一个空字符 `\0`,表示字符串的结束。
在主函数中,我们通过调用 `string_concat` 函数将两个输入的字符串连接起来,并输出结果。
编写一个程序,将两个字符串连接起来,用strcat函数
好的,您可以使用以下代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char s1[100], s2[100];
printf("请输入第一个字符串:");
scanf("%s", s1);
printf("请输入第二个字符串:");
scanf("%s", s2);
strcat(s1, s2);
printf("连接后的字符串为:%s", s1);
return 0;
}
```
这个程序会要求您输入两个字符串,然后使用 `strcat` 函数将它们连接起来,并输出连接后的字符串。需要注意的是,为了避免缓冲区溢出,您需要确保两个字符串的总长度不超过数组的容量。