阅读量:0
可以通过递归或者循环的方式实现字符串的逆序输出。
方法一:递归实现
递归的思路是先输出除最后一个字符之外的子字符串的逆序,再输出最后一个字符。具体实现如下:
void printReverse(char str[]) { if (str[0] == '\0') { return; } else { printReverse(str + 1); putchar(str[0]); } } int main() { char str[100]; printf("Enter a string: "); fgets(str, sizeof(str), stdin); printf("Reverse of the string is: "); printReverse(str); return 0; }
方法二:循环实现
循环的思路是从字符串的最后一个字符开始依次输出到第一个字符。具体实现如下:
void printReverse(char str[]) { int len = strlen(str); for (int i = len - 1; i >= 0; i--) { putchar(str[i]); } } int main() { char str[100]; printf("Enter a string: "); fgets(str, sizeof(str), stdin); printf("Reverse of the string is: "); printReverse(str); return 0; }
以上两种方法都可以实现字符串的逆序输出,具体使用哪种方法可以根据实际需求选择适合的方式。