過年了,紅包是少不了的,大家都收到紅包了嗎?今天呀,小編也送給你一個大紅包,總錢數100元,總共包了10個,先到先得哦~~
那你知道微信紅包是怎麼實現的嗎?其實呀,它是對應一個算法的。
上面是一個微信搶紅包金額随機分布結果,那大家知道它是怎麼來的嗎?這就與計算機編程中的C語言程序有關了,此次小編将為大家介紹C語言,下面就是這個微信搶紅包的程序:
#include
#include
#include
int main(void)
{
float total;
printf('輸入總錢數:\n');
scanf('%f',&total);
int num;
printf('輸入紅包數量:\n');
scanf('%d',&num);
float min=0.01;
float safe_total;
float money;
int i;
srand((unsigned)time(NULL));
for(i=1;i<>
safe_total=(total-(num-i)*min)/(num-1);
money=(float)(rand()%((int)(safe_total*100)))/100+min;
total=total-money;
printf('紅包%2d:%.2f元,餘額:%.2f元\n',i,money,total);
}
printf('紅包%2d:%.2f元,餘額:0.00元\n',num,total);
return 0;
}
當然,除了能編出微信搶紅包的程序之外,C語言還有很多強大的功能,我們還可以這麼玩兒~
下面小編就正式為大家介紹一下C語言:
C語言簡介
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目标是提供一種能以簡易的方式編譯、處理低級存儲器、産生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持着良好跨平台的特性,以一個标準規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
二十世紀八十年代,為了避免各開發廠商用的C語言語法産生差異,由美國國家标準局為C語言訂定了一套完整的國際标準語法,稱為ANSI C,作為C語言最初的标準。
C語言之所以命名為C,是因為C語言源自Ken Thompson發明的B語言,而B語言則源自BCPL語言。
語言組成
基本構成:數據類型;常量與變量;數組;指針;字符串;文件輸入/輸出;運算;基本數據類型;類型修飾關鍵字;存儲級别關鍵字;跳轉結構;分支結構;編譯。
語法結構
1、順序結構;2、選擇結構;3、循環結構。
順序結構、分支結構和循環結構并不彼此孤立的,在循環中可以有分支、順序結構,分支中也可以有循環、順序結構。
程序結構
C語言的模塊化程序結構用函數來實現,即将複雜的C程序分為若幹模塊,每個模塊都編寫成一個C函數,然後通過主函數調用函數及函數調用函數來實現一大型問題的C程序編寫。因此,對函數的定義、調用、值的返回等中要尤其注重理解和應用,并通過上機調試加以鞏固。
1、判斷語句(選擇結構);2、循環語句(循環結構);3、跳轉語句(循環結構:是否循環)。
運算符号
運算符優先級從高到低大緻:單目運算符、算術運算符、關系運算符、邏輯運算符、條件運算符、賦值運算符(=)和逗号運算符。
下邊是判斷一個數是否為素數的程序~
運行結果如下圖:
想要一起學習C++的可以加群248894430,群内有各種資料滿足大家
本文為頭條号作者發布,不代表今日頭條立場。
有話要說...