C++编写一个程序,键盘任意输入一个字符串,字符串以#号结束,然后将该字符串逆序输出,请不要调用系统函数。 输入 输出 123456789# 987654321
时间: 2024-02-14 10:07:26 浏览: 115
好的,以下是代码:
```cpp
#include <iostream>
using namespace std;
int main() {
char str[1000]; // 定义字符数组存储字符串
int len = 0; // 记录字符串长度
char ch = getchar(); // 逐个读入字符
while (ch != '#') {
str[len++] = ch;
ch = getchar();
}
for (int i = len - 1; i >= 0; i--) { // 逆序输出字符串
cout << str[i];
}
return 0;
}
```
首先定义一个字符数组 `str` 存储字符串,定义一个整数 `len` 记录字符串长度。然后使用 `getchar()` 逐个读入字符,将字符存入数组中,直到读入 `#` 为止。
最后使用 for 循环从后向前遍历字符数组 `str`,将每个字符逆序输出即可。
相关问题
c++编自己编写一个程序,键盘任意输入一个字符串,字符串以#号结束,然后将该字符串逆序输出,请不要调用系统函数
以下是 C++ 代码实现:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string s;
cout << "请输入字符串:";
getline(cin, s, '#');
string result = "";
for (int i = s.length()-1; i >= 0; i--) {
result += s[i];
}
cout << "逆序输出结果:" << result << endl;
return 0;
}
```
程序中使用了 `getline()` 函数获取用户输入的字符串,第三个参数 `'#'` 表示以 # 号作为输入结束符。然后使用一个循环遍历字符串中的每个字符,并逆序将它们拼接到一个新的字符串变量 `result` 中。最后输出 `result` 即可得到逆序输出的结果。
c++编写一个程序 接收用户输入的一个字符串
,然后反转字符串并输出。
很高兴回答你的问题!以下是解决方案:
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
for(int i = 0; i < len / 2; i++) {
char temp = str[i];
str[i] = str[len - i - 1];
str[len - i - 1] = temp;
}
printf("反转后的字符串为:%s", str);
return 0;
}
你可以将用户输入的字符串保存在一个字符数组中,然后使用一个 for 循环来反转字符串中的字符。具体来说,我们可以交换字符串的第一个字符和最后一个字符,第二个字符和倒数第二个字符,以此类推。最后输出反转后的字符串即可。
希望对你有所帮助!
阅读全文