【求助】c++,骰子寫不出來@@ - 第2頁 - PCZONE 討論區

返回   PCZONE 討論區 > ▲ -- 網 路 生 活 分 享 區 > -- 閒 話 家 常 灌 水 版


PCZONE 討論區



通知

-- 閒 話 家 常 灌 水 版 上 面 那 些 硬 梆 梆 的 專 業 話 題 插 不 上 話 ?? 那 就 來 這 邊 就 你 周 遭 網 路 上 或 生 活 上 的 話 題 來 哈 拉 一 下

會員

在亂數產生之前先
randomize();
第二次執行時就不會跟第一次一樣
另機率統計應該不是除i吧...總次數應該是n

回覆
會員

可以請問一下scanf("%d", &n)該如何使用呢?
回覆
會員

引用:
作者: 小熊逛大街
可以請問一下scanf("%d", &n)該如何使用呢?
這個函式的設計有些特別,它不能接受變數名,必須給它變數的地址。
常用的輸入格式如下:

如果要輸入一個 int 型態的數,用 %d
如果要輸入一個 unsigned int 型態的數,用 %u
如果要輸入一個 float 型態的數,用 %f
如果要輸入一個 double 型態的數,用 %lf (小寫的 L 和 F)
以上的數,假設都以十進制數字輸入。

如果要輸入一個 char 型態的數或字元,不要用 scanf(), 改用 getchar()
getchar() 會從標準輸入裝置一個一個字元地讀進來,它不會跳過任何字元。但是 scanf() 會自動跳過所有的連續空白,所謂空白包括了空格、跳格和折列指令 ('\n')。當第一次呼叫 scanf() 的時候,它跳過所有的連續空白,讀取第一個廣義字串,然後按照格式 (例如 %d 或 %f 等等) 解釋讀進來的字串,如果解釋成功了,就將它儲存到指定的地址,並且返回 1;如果沒有成功,就返回 0;如果讀進來的資料代表輸入檔案之結束,就返回 EOF。當第二次呼叫 scanf() 的時候,它就跳過第一個廣義字串之後的所有連續空白,讀取第二個廣義字串,依此類推。
回覆
會員

語法:
#include "stdlib.h"
#include <iostream>
#include "time.h"

using namespace std;

struct DiceNumAppearTimes {
    int nNum;
    int nTimes;
} numAppearTimes[6] = {1, 0, 2, 0, 3, 0, 4, 0, 5, 0, 6, 0};

void main() {
    srand(time(0));
	
    int nTimes = 0;

    cout << "請輸入擲骰次數:";
    cin >> nTimes;

    int nIndex = 0, nNum = 0;

    for(; nIndex < nTimes; ++nIndex) {
    	(numAppearTimes[(rand() % 6)].nTimes)++;
    }

    for(nIndex = 0; nIndex < 6; ++nIndex) {
	cout << "Number " << numAppearTimes[nIndex].nNum << " : " << numAppearTimes[nIndex].nTimes << " times. (" << (numAppearTimes[nIndex].nTimes * 100 / nTimes) << "%)" << endl;
    }
}
開發環境 : VC++ 6.

交作業前請儘量搞懂程式流程,以免一問三不知...
回覆
會員

引用:
作者: 小熊逛大街
可以請問一下scanf("%d", &n)該如何使用呢?
問MSDN吧...
你以後遇到問題總不能都上網問別人吧?
Win32下的問題有一大堆都能在MSDN裡翻出來
只是有些比較難翻
不過 你要學著會找答案
回覆
會員

引用:
作者: 小熊逛大街
可以請問一下scanf("%d", &n)該如何使用呢?
既然你說是要交作業 那應該就是在上課中
如果是在上課中 你的課本沒有講到 scanf 的用法 那那本可以丟了
回覆
會員

引用:
作者: 怪盜基德
既然你說是要交作業 那應該就是在上課中
如果是在上課中 你的課本沒有講到 scanf 的用法 那那本可以丟了
小弟根本還沒買書也沒上過課,純粹只有上網看過其他人寫的筆記而已
還有作業根本不是我要交的好嗎,請搞清楚好嗎.........................
回覆
會員

引用:
作者: Age
明天要交作業了
可是我怎樣寫一直錯
有人可以幫我嗎?

題目是:請使用亂數寫一個骰子程式,每次執行結果必需不能重複。
執行結果:
請輸入骰的次數:
骰子一的出現次數為__次,機率為____%
骰子二的出現次數為__次,機率為____%
依此類堆

謝謝
話說… 雖然這裡是「閒 話 家 常 灌 水 版 」但是問program這種東西是不是該去比較專業一點的地方問呢?
Delphi K.Top : http://delphi.ktop.com.tw/
Delphi、C/C++、Single chip、Analog/Digital.... etc. 那裡有很多台灣的高手能幫你解答的,而且您也能學會「該如何發問」。
回覆
會員

引用:
作者: 怪盜基德
既然你說是要交作業 那應該就是在上課中
如果是在上課中 你的課本沒有講到 scanf 的用法 那那本可以丟了
如果以C++入門的書來講 一般沒有scanf是很正常的
因為C++都建議使用cout 和 cin來取代原本的函數
回覆
會員

原PO只不過是要問個問題嘛!!怎麼一路看下來有些是冷嘲熱諷的言論??
如果有人覺的原PO是伸手牌的,大可不理,何必講那些有的沒的!!



回覆


類似的主題
主題 主題作者 討論版 回覆 最後發表
【求助】C++ API的說明哪裡找 a100 -- HELP ME 電 腦 軟 硬 體 急 救 版 3 2003-04-25 09:59 AM
【求助】C:@windows@temp 項下所有的資料夾、檔案都可刪除嗎? clayhsu -- Windows 討 論 版 5 2002-12-19 12:13 AM
【求助】c:\\windows\winserv.exe 感染了Trojan Horse robertwill -- HELP ME 電 腦 軟 硬 體 急 救 版 11 2002-07-08 05:00 PM
【求助】C++問題,關於密碼的問題 j72811 -- 其 他 軟 體 討 論 版 5 2002-04-28 01:20 AM






 XML   RSS 2.0   RSS 
本站使用 vBulletin 合法版權程式
站務信箱 : [email protected]

本論壇所有文章僅代表留言者個人意見,並不代表本站之立場,討論區以「即時留言」方式運作,故無法完全監察所有即時留言,若您發現文章可能有異議,請 email :[email protected] 處理。