目錄
讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:申請域名、虛擬空間、營銷軟件、網站建設、河南網站維護、網站推廣。前言
這里都是以int類型為例,在使用時需要自己跟據實際情況更改數據類型。都比較簡單,相信各位大佬們都能隨便手打,但在寫同一類型的題目時,多次的重復很容易影響刷題的爽感和連貫性,所以這里給出了一些刷題常用的功能。
冒泡排序
交換
幼稚小故事
逆轉數組
幼稚小故事
打印整個數組(一維)
給一維數組賦值
打印整個二位數組
給二維數組賦值
求和函數
求差函數
求積函數
求商函數
傳要排序的數組名,和元素個數。
顧名思義,冒泡一樣的排序方法:較大\較小的值一個一個向后移動,直到遇到比它大的數或者到數組的邊界。
我們這里用兩個循環來完成,大循環決定有多少個數排序,小循環負責決定這個數接下來最多要比多少次。
?
void bubble_sort(int arr[], int n)
{
int i = 0;int j = 0;int tmp = 0;
for (i = 0; i< n; i++)
{
for (j = 0; j< n - 1-i; j++)
{
if (arr[j] >arr[j + 1])
{
tmp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = tmp;
}
}
}
}
?
交換傳要交換的兩個數地址。
幼稚小故事用倒醬油做例子,現在有兩壺醬油,分別取名為A、B,A由精美的玻璃壺裝,B由普通的塑料壺承裝,但A醬油的品質比B醬油的差。
小樂樂想要送給朋友包裝又好看,品質又好的醬油給朋友,就想讓著兩壺醬油交換瓶子。
一旁的小悲悲插話:“一定要倒掉一壺才能將B醬油倒進A醬油的瓶子。”
小樂樂想,他可不會干這種傻事,他要給小悲悲一點小小的樂樂震撼,于是他掏出了一個空瓶(上次小悲悲倒醬油的結果),先將A醬油倒入空瓶里,再將B醬油倒進A瓶里,最后將A醬油倒進B瓶子里。
這里,空瓶就是tmp,醬油A、B分別是*p2、*p1。
void swap(int* p1, int* p2)
{
int tmp = 0;
tmp = *p2;
*p2 = *p1;
*p1 = tmp;
}
逆轉數組傳要逆轉的數組以及數組元素個數。
幼稚小故事小悲悲在編程時遇到一個問題(請將下列數組倒置,不允許用printf倒著打印)。
這下小悲悲可犯難了,于是爬上水管去找小樂樂解惑。
小樂樂聽完,冷笑幾聲:“我看你是不懂哦~,我只需要n/2步就能搞定”,邊說邊拿出6個紙杯,成一長條擺在小悲悲前,“假如這是存放了六個元素的數組,我現在要將它倒置。”
小悲悲掏出筆記本記錄。
小樂樂左手指著最左邊的紙杯,右手指著最右邊的紙杯,“假設我這兩只手是指針,一個指向了數組的首元素,一個指向了數組的最后元素,我把這兩個交換一下。”
小樂樂左手指向第二個紙杯,右手指向倒數第二個紙杯,“這是第二步,我把這兩在交換一下。”
小樂樂左手指向第三個紙杯,右手指向倒數第三個紙杯,“這是第三步,我把這兩再交換一下,看!是不是數組的元素倒過來了?”
小悲悲又問:“樂樂,你這是偶數個紙杯,要是是奇數個怎么辦了?”
“中間那個單著的不需要換!”
“可是7/2是三點五次啊”
“INT類型的相除只取整數部分!”
void R_sto(int arr[],int sz)
{
int* p1 = arr;
int* p2 = &arr[sz - 1];
int n = sz / 2;
while (n)
{
int tmp = *p2;
*p2 = *p1;
*p1 = tmp;
n--;
}
}
打印整個數組(一維)傳要打印的數組名,傳元素個數。
void P_arr(int arr[], int n)
{
for (int i = 0; i< n; i++)
{
printf("%d", arr[i]);
}
}
給一維數組賦值傳一維數組名,以及元素個數。
void AS_arr(int *p, int n)
{
for (int i = 0; i< n; i++)
{
scanf("%d", (p + i));
}
}
打印整個二位數組傳二維數組名,和行數、列數。
void P2_arr(int (*p) [N] ,int n,int m)
{
for (int i = 0; i< n; i++)
{
for (int j = 0; j< m; j++)
{
printf("%d",*(*(p+i)+j));
}
}
}
給二維數組賦值傳二維數組數組名,行數,列數,N就是行數,需要自己填上去。
void AS2_arr(int(*p)[N], int n, int m)
{
for (int i = 0; i< n; i++)
{
for (int j = 0; j< m; j++)
{
scanf("%d", (*(p + i) + j));
}
}
}
求和函數int ADD(int m, int n)
{
return m + n;
}
求差函數int SUB(int m, int n)
{
return m - n;
}
求積函數int MUL(int m, int n)
{
return m * n;
}
求商函數int DIV(int m, int n)
{
if (n != 0)
{
return m / n;
}
else
{
printf("除數不能為零!");
}
}
你是否還在尋找穩定的海外服務器提供商?創新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧
網站題目:【C語言】一些常用的函數-創新互聯
文章源于:http://vcdvsql.cn/article38/csspsp.html
成都網站建設公司_創新互聯,為您提供商城網站、手機網站建設、電子商務、App開發、外貿網站建設、外貿建站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯