//有一个字符数组的内容为:"student a am i", 请你将数组的内容改为"i am a student". //要求: //不能使用库函数。只能开辟有限个空间(空间个数和字符串的长度无关)。 // #include <stdio.h> #include <string.h> void fanw(char *left, char *right) //把每个单词单词翻转 { char* pleft = left; char* pright = right; char temp; while (pleft < pright) { temp = *pleft; *pleft = *pright; *pright = temp; pleft++; pright--; } } void fans(char *p) //把翻转后的单词再翻转 { while (*p != '\0') { char *pst = p; while (*p != '\0' && *p != ' ') { p++; } fanw(pst, p - 1); p++; } } int main() { char p[30] = "student a am i"; int len = strlen(p); printf("原字符串为 : %s\n", p); printf("翻转后的字符串为 :"); fanw(p, p + len - 1); fans(p); printf("%s\n", p); return 0; }
字符数组内容的逆序
原创
©著作权归作者所有:来自51CTO博客作者小杨杨雪松的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
数组的逆序输出
数组的逆序打印
逆序输出 arr[ ] -
Java字符数组倒排 java字符串数组逆序输出
java 字符串的反转输出
java 数组 System 字符串