编一个程序,输入3个字符串(长度均不超过30)存入一个二维的字符型数组中,将第3个字符串连接到第2个字符串之后,然后再连接到第1个字符串之后,组成新的字符串存入一维的字符型数组中,然后输出该新的字符串(说明:本题不允许使用字符串连接函数)。
时间: 2023-06-11 12:06:03 浏览: 64
以下是C++的实现代码:
```cpp
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char str[3][31]; // 存储输入的三个字符串
char newStr[91]; // 存储连接后的新字符串,长度为 30*3+1 = 91
// 输入三个字符串
for (int i = 0; i < 3; i++) {
cin >> str[i];
}
// 将第3个字符串连接到第2个字符串之后,再连接到第1个字符串之后
int len1 = strlen(str[0]);
int len2 = strlen(str[1]);
int len3 = strlen(str[2]);
for (int i = 0; i < len1; i++) {
newStr[i] = str[0][i];
}
for (int i = 0; i < len2; i++) {
newStr[i+len1] = str[1][i];
}
for (int i = 0; i < len3; i++) {
newStr[i+len1+len2] = str[2][i];
}
newStr[len1+len2+len3] = '\0'; // 新字符串末尾加上字符串结束符
// 输出连接后的新字符串
cout << newStr << endl;
return 0;
}
```
程序先输入三个字符串,然后使用三个 for 循环将它们连接到一起。注意要在新字符串的末尾加上字符串结束符 '\0'。最后输出连接后的新字符串。
阅读全文