骰子確實是活躍酒桌氣氛的一大神器,因為它的隨機帶來的不確定性讓我們感到緊張和興奮。所以我們今天來通過乙個程式來重新體會一下擲骰子的樂趣。
程式要求
1、輸入骰子的面數和個數
2、輸出總點數
3、使用者決定是否繼續
4、退出後返回擲骰子的次數
解題思路
1、獲取骰子的面數和個數,面數不能少2面,個數不能少於1個;
2、返回總點數給使用者,需要寫乙個隨機數函式,並且種子跟著時間修改,增強隨機性
需要用到的新函式rand()、srand()、time()
rand():通過種子來生成乙個指定範圍內的隨機數,rand() 在呼叫前會確定一下srand() 是否修改過種子
srand():用來修改隨機種子的數值
time():返回乙個機器的日曆時間
scanf() 會返回接受資料的個數,可以通過這個來判斷使用者輸入個數是否合法
codeblocks 編譯
diceroll.h
#ifndef diceroll_h_included
#define diceroll_h_included
//表示roll_count 是外部變數
extern
int roll_count;
introll_n_dice
(int dice,
int sides)
;#endif
// diceroll_h_included
diceroll.c
/** diceroll.c -- 擲骰子模擬程式 */
//與mandydice.c 一起編譯
#include
"diceroll.h"
#include
#include
//提供rand() 的原型
int roll_count =0;
static
introllem
(int sides)
introll_n_dice
(int dice,
int sides)
if(dice <1)
//骰子的個數控制迴圈次數
//計算點數的總和
for(d =
0; d < dice; d++
) total +
=rollem
(sides)
;return total;
}
manydice.c
/** 多次擲骰子的模擬程式 */
//與diceroll.c 一起編譯
#include
#include
//為srand() 提供宣告
#include
//為time() 提供原型
#include
"diceroll.h"
//為roll_n_dice 提供原型,為roll_count 變數提供宣告
#define ______start______
#define ______end______
intmain
(void)}
//呼叫函式生成點數總和
roll =
roll_n_dice
(dice, sides)
;//輸出資料,並進行下一次判斷
printf
("您使用了%d個%d面骰子骰出了%d點\n\n"
, dice, sides, roll)
;printf
("請輸入骰子的面數,輸入0 退出\n");
} ______end______
printf
("一共擲了%d次骰子\n"
, roll_count)
;printf
("遊戲結束,祝您生活愉快!\n");
return0;
}
當然我們也可以用今天學到的新函式來做乙個**程式 可以偷偷摸摸的弄點小手腳 ,但是聽說別人年會上大佬寫的**程式要被投影出來公開處刑看看有沒有問題。太難頂了。
本月更新進度 10/10
創作不易,你的點讚是我最大的動力!!!
我們下次再見 end~
普及一下酒桌上的規矩
昨晚和一些朋友們喝酒,行酒之間頗有感慨。敬酒和勸酒是酒桌上常見的事情,任何事情都有它的規律在裡面。從生活瑣事到企業管理都一樣,當然也包括喝酒了。我喝酒的歷史有很長了,大約有二十多年的酒齡。這裡首先倚老賣老一番,給不喝酒的朋友普及一下酒桌上的規矩,同時和喝酒的朋友交流一下心得體會。酒桌上不碰杯是不正常...
普及一下酒桌上的規矩
昨晚和一些朋友們喝酒,行酒之間頗有感慨。敬酒和勸酒是酒桌上常見的事情,任何事情都有它的規律在裡面。從生活瑣事到企業管理都一樣,當然也包括喝酒了。我喝酒的歷史有很長了,大約有二十多年的酒齡。這裡首先倚老賣老一番,給不喝酒的朋友普及一下酒桌上的規矩,同時和喝酒的朋友交流一下心得體會。酒桌上不碰杯是不正常...
普及一下酒桌上的規矩
昨晚和一些朋友們喝酒,行酒之間頗有感慨。敬酒和勸酒是酒桌上常見的事情,任何事情都有它的規律在裡面。從生活瑣事到企業管理都一樣,當然也包括喝酒了。我喝酒的歷史有很長了,大約有二十多年的酒齡。這裡首先倚老賣老一番,給不喝酒的朋友普及一下酒桌上的規矩,同時和喝酒的朋友交流一下心得體會。酒桌上不碰杯是不正常...