把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");
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/382864.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/382864.shtml
英文地址,請注明出處:http://en.pswp.cn/news/382864.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

關掉占用 某端口的進程

sudo fuser -k 8000/tcp 這樣和端口8000相關的進程就都關了。

linux之多線程(1)

我們之前講了進程&#xff0c;今天我們重新認識另外一個概念---線程。我們首先會想到的是進程和線程有什么區別和聯系&#xff0c;對吧&#xff1f;進程是由程序執行起來&#xff0c;跑在操作系統的&#xff0c;是系統進行資源分配和調度的基本單位。進程具有資源獨占性&#x…

C語言typedef與#define的區別

typedef和#define define 沒有參加編譯&#xff0c;在預處理的時候就被替換掉了。 typedef參加編譯和鏈接。typedef是重命名&#xff0c;可以為枚舉結構體等等重新命名&#xff0c;提高代碼整潔。 一、typedef的用法 C語言中&#xff0c;typedef常用來定義一個標識符及關鍵…

django models模型 內部類 class Meta 簡介

class Meta: #這個屬性是定義當前的模型類是不是一個抽象類。所謂抽象類是不會相應數據庫表的。一般我們用它來歸納一些公共屬性字段&#xff0c;然后繼承它的子類能夠繼承這些字段。abstractTrue #db_table是用于指定自己定義數據庫表名的db_table test#因為Django的管理方法…

阻斷血緣關系以及checkpoint文件清理

spark-sql讀寫同一張表&#xff0c;報錯Cannot overwrite a path that is also being read from 1. 增加checkpoint&#xff0c;設置檢查點阻斷血緣關系 sparkSession.sparkContext.setCheckpointDir("/tmp/spark/job/OrderOnlineSparkJob")val oldOneIdTagSql s&…

linux之睡眠函數(my_sleep)

我們在程序中&#xff0c;很多次用到sleep()函數&#xff0c;讓它睡眠幾秒后再執行該進程。今天呢&#xff0c;我要給大家實現一下sleep函數。 看看代碼哦&#xff1a; 運行結果&#xff1a; 結果中每隔三秒鐘&#xff0c;打印一條語句。實現了sleep(3)的功能。 關于sleep函數…

C語言 防止頭文件被多次引用

comm.h和comm.c是公共模塊。 test1.h和test1.c使用了公共模塊。 test2.h和test2.c使用了了公共模塊。 test.h和test.c使?用了了test1模塊和test2模塊。 這樣最終程序中就會出現兩份comm.h的內容。這樣就造成了了文件內容的重復。 1.方法1 文件開頭加上這一句就ok #prag…

python字符串切片操作

name abcdefghijk name[2:-1] cdefghijname[2:] cdefghijk # 第三個參數是步長 name[2:-1:2] cegi# 字符串反轉 name[::-1] name[-1::-1] kjihgfedcba kjihgfedcba

機器思維。一些讓我眼前一亮的算法。

用人腦相處了計算機處理數據的方式。而不是 人腦處理的方式—>用計算機的語言表達 人腦處理的方式—>計算機處理的方式—>用計算機的語言表達

python 之 __new__ 方法理解

python的new方法 使用場景不同效果也不一樣 一種是指定元類時候&#xff0c; metaclassMyType 類型 這種方式 在解釋器執行到 metaclassCrawlerProxyMetaclass 的時候&#xff0c; __new__方法就開始執行&#xff01; 這里的 __new__方法是用來創建類對象的 class CrawlerProx…

詳解強制類型轉換

今天談談類型轉換的問題吧&#xff0c;之前我們也遇到過類型轉換&#xff0c;比如c語言中這樣的賦值&#xff1a; 顯然&#xff0c;i和j是不同類型的變量&#xff0c;但是卻可以完成賦值&#xff0c;結果是這樣的&#xff1a; 其實它們是做了隱式的類型轉換&#xff0c;相當于&…

面試--輸入一堆隨機數(0-1000),這里面會有重復的數字,把他們去除掉。然后由大到小排列。

1.問題說明 11 10 20 40 32 67 40 20 89 300 400 15 10 15 20//只顯示1次 32 40//只顯示1次 67 89 300 400 正常的算法&#xff1a; 1.遍歷所有數組&#xff0c;去除掉重復的數字 2.使用XX排序法&#xff0c;進行數字的排序。 眼前一亮的機器算法 1.生成1-1000的數組&am…

c++之類型萃取

剛剛我們接觸過模板類&#xff0c;類似于這樣的&#xff1a; 在這個類中&#xff0c;我們如何知道它是什么類型的呢&#xff1f;這里&#xff0c;我們可以在類中加入一個內嵌類型&#xff0c;如&#xff1a; 這樣就可以知道它是用戶自定義的還是本身類型就擁有的&#xff0c;我…

django xadmin出現的問題

1.File “/home/yuanqi/.virtualenvs/djangodev1/lib/python3.5/site-packages/xadmin/sites.py”, line 9, in reload(sys) import importlib importlib.reload(sys)# sys.setdefaultencoding("utf-8")把相應文件改為上述這樣

一道面試題--兩個int(32位)整數m和n的二進制表達中,有多少個位(bit)不同

1.問題說明 十進制4 0100 十進制8 1000二進制不同的 0100 1000有兩位不同 正常的算法 1.兩個數字與1&#xff0c;拿出兩個數字的最后一位&#xff0c;比較是否相同&#xff0c;直到右移32次&#xff0c; for (int i 0; i < 32; i){if ((m & 1) ! (n & 1)){count…

時間復雜度空間復雜度

我們編過不少代碼&#xff0c;起初學習的時候我們習慣性的認為&#xff0c;只要代碼能正確的運行就ok啦~很少考慮代碼的優化帶來的好處。今天說一下影響代碼性能的兩個重要指標--時間復雜度&空間復雜度。 時間復雜度&#xff1a;就是函數&#xff08;指數學中的函數&#…

C語言 函數遞歸例題解析

1.接受一個整形值&#xff08;無符號&#xff09;&#xff0c;把它轉換為 字符并打印它模擬實現strlen()函數。3.求n的階乘4.斐波那契數列總結 1.接受一個整形值&#xff08;無符號&#xff09;&#xff0c;把它轉換為 字符并打印它 void fun(int x) {if (x > 9){fun(x/10)…

xpath 簡單用法小記

1 xpath定位 沒有某個屬性的元素 例如定位沒有class屬性的td tds tr.xpath(.//td[not(class)])

剖析printf函數

printf是什么&#xff0c;對于起初學習c語言的同學來說肯定都特別的疑惑。在這里&#xff0c;解答一下&#xff1a;它是一個函數。既然是一個函數的話&#xff0c;想必肯定有返回值和參數吧。那么它的返回值和參數是什么呢&#xff1f; 1、看一下這個例子&#xff0c;可能更好…