//有一个字符数组的内容为:"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; }
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。