接受一个只包含小写字母的字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)
#include <stdio.h> #include <ctype.h> #include <string.h> int main() { char strr[1001] = "\0"; //加一个位置是给\n的 fgets(strr, sizeof(strr), stdin); strr[strcspn(strr, "\n")] = '\0'; //把\n替换为\0 int len = strlen(strr); //逐个检查,确保每一个字符都是小写 for (int i = 0; i < len; i++ ) { if (! islower(strr[i]) ) { return -1; } } //倒序逐个打印 for (int j = len - 1; j >= 0; j--) { printf("%c", strr[j]); } }
#include <stdio.h> #include "string.h" int main() { char str[1000]; scanf("%s", str); int i; i = strlen(str)-1; for(; i >= 0; i--) { printf("%c", str[i]); } }
#include <stdio.h> int main() { char sour[1000] ={0}; char *p; scanf("%s", &sour); p = sour; while(*p) p++; do { p--; printf("%c", *p); }while(p != sour); }
#include <stdio.h> #include <string.h> int main() { char str[1001] = {0}; // scanf("%s", str); gets(str); for (int i = strlen(str)-1; i >= 0; i--) { printf("%c", str[i]); } }
#include<stdio.h> #include<string.h> char* my_reverse(char* arr,int len) { char* left=arr; char* right=arr+len-1; char* ret=arr; while(left<right) { char temp=*left; *left=*right; *right=temp; left++; right--; } return ret; } int main() { char arr[1000]={0}; gets(arr); int len=strlen(arr); printf("%s\n",my_reverse(arr,len)); return 0; }