把student a am i 变成 i am a student(两种方法)
生活随笔
收集整理的這篇文章主要介紹了
把student a am i 变成 i am a student(两种方法)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
#student a am i 變成 i am a student
##方法1:指針 #include <stdlib.h> #include <stdio.h> #include <string.h>void fanw(char *l, char *r) {char* left = l;char* right = r;char temp;while (left < right){temp = *left;*left = *right;*right = temp;left++;right--;} } //解析出來每個單詞 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; }
##方法2:數組
void reservestring(char a[], int x, int y) {x = x - 1;while (x >= y){char tmp = a[x];a[x] = a[y];a[y] = tmp;x--;y++;} }void reserve(char a[], int num) {int x = 0;int y = 0;num += 1;while (num--){if (a[x] == ' ' || a[x] == '\0'){reservestring(a, x, y);y = x + 1;x = y;}else{x++;}}reservestring(a, strlen(a), 0); } int main() {char a[] = "student a am i";reserve(a, strlen(a));printf("%s", a);system("pause"); } 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的把student a am i 变成 i am a student(两种方法)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 做试管婴儿失败了是什么原因
- 下一篇: C语言typedef与#define的区