用c++使输入的字符串,反转输出
时间: 2023-05-22 15:04:35 浏览: 107
您好,以下是使用 C 语言反转输入字符串的代码:
```
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("请输入字符串:");
scanf("%s", str);
int len = strlen(str);
for (int i = len - 1; i >= 0; i--) {
printf("%c", str[i]);
}
return 0;
}
```
当您输入一个字符串后,该代码将按相反的顺序输出该字符串。例如,如果您输入 "hello",则输出为 "olleh"。希望能够帮助您!
相关问题
使用c++写个字符串反转
可以使用以下代码来反转字符串:char* reverse(char* str) {
int length = strlen(str);
int i;
char *result = (char*)malloc(length+1);
for(i = 0; i < length; i++) {
result[length-i-1] = str[i];
}
result[length] = '\0';
return result;
}
c++16进制字符串反转
要将一个16进制字符串进行反转,你可以使用以下步骤来实现:
1. 首先,将16进制字符串转换为普通的字符串。
2. 然后,将普通字符串进行反转操作。
3. 最后,将反转后的字符串再转换回16进制字符串。
这里是一个示例代码,演示了如何实现这个功能:
```cpp
#include <iostream>
#include <algorithm>
#include <sstream>
// 函数用于将16进制字符串转换为普通字符串
std::string hexToString(const std::string& hexStr) {
std::string result;
for (size_t i = 0; i < hexStr.length(); i += 2) {
std::string byteStr = hexStr.substr(i, 2);
char byte = static_cast<char>(std::stoi(byteStr, nullptr, 16));
result.push_back(byte);
}
return result;
}
// 函数用于将普通字符串转换为16进制字符串
std::string stringToHex(const std::string& str) {
std::stringstream ss;
for (const char& c : str) {
ss << std::hex << static_cast<int>(c);
}
return ss.str();
}
int main() {
std::string hexStr = "48656c6c6f20576f726c64"; // 16进制字符串
std::string str = hexToString(hexStr); // 转换为普通字符串
std::reverse(str.begin(), str.end()); // 反转字符串
std::string reversedHexStr = stringToHex(str); // 转换为16进制字符串
std::cout << "Reversed Hex String: " << reversedHexStr << std::endl;
return 0;
}
```
运行此代码将输出反转后的16进制字符串。请注意,该代码假定输入的16进制字符串的长度是偶数。如果长度是奇数,你可能需要进行额外的处理。
阅读全文