本关任务:编一程序,将两个字符串连接起来,不要用strcat函数。c语言
时间: 2024-12-10 17:43:17 浏览: 22
在C语言中,如果你想要将两个字符串连接起来而不用`strcat`函数,可以手动操作字符数组。以下是一个基本的示例,通过遍历第一个字符串并在第二个字符串后面逐个添加字符实现连接:
```c
#include <stdio.h>
#include <string.h> // 仅需要strlen函数,不需要strcat
#define MAX_LENGTH 100 // 预设字符串最大长度
char str1[MAX_LENGTH]; // 第一个字符串
char str2[MAX_LENGTH]; // 第二个字符串
char result[MAX_LENGTH]; // 结果字符串
void concatenateStrings(char* str1, char* str2) {
int len1 = strlen(str1);
int len2 = strlen(str2);
// 将第一个字符串复制到结果字符串
for (int i = 0; i < len1; i++) {
result[i] = str1[i];
}
result[len1] = '\0'; // 添加字符串结束符
// 将第二个字符串附加到结果字符串后面
for (int i = 0; i < len2; i++) {
result[len1 + i] = str2[i];
}
result[len1 + len2] = '\0'; // 结束结果字符串
}
int main() {
printf("Enter the first string: ");
fgets(str1, MAX_LENGTH, stdin);
str1[strcspn(str1, "\n")] = '\0'; // 移除fgets的换行符
printf("Enter the second string: ");
fgets(str2, MAX_LENGTH, stdin);
str2[strcspn(str2, "\n")] = '\0'; // 移除fgets的换行符
concatenateStrings(str1, str2);
printf("Concatenated string: %s\n", result);
return 0;
}
阅读全文