本帖最後由 李泳霖 於 2024-3-16 14:41 編輯
備註:若課堂上未能完成,當作業!
設計遊戲 "超級金頭腦",
讓使用者計算兩個範圍介於51~99之隨機亂數的和.
參考作法如下:
1. 要有一個起始畫面, 顯示標題與遊戲規則
2. 參賽人數
3. 參賽者姓名
4. 請就位的訊息
5. 測驗中畫面
6. 排名
參考排序法四- #include<iostream>
- #include<ctime>
- using namespace std;
- int main()
- {
- srand(time(NULL));
- int player,ans;
- cout<<"*** 超級金頭腦 v1.0 ***"<<endl<<endl;
- cout<<"遊戲規則: 電腦隨機出題, 比賽誰能在最短的時間內答對三題!"<<endl;
- cout<<"有幾位挑戰者?";
- cin>>player;
- string name[player];
- int score[player]={0};//初始值為0
- for(int i=0;i<player;i++)//i-->挑戰者
- {
- cout<<"第"<<i+1<<"位挑戰者你好, 請輸入你的大名: ";
- cin>>name[i];
- cout<<name[i]<<"同學請就位!"<<endl;
- system("pause");
- system("cls");
- int correct=0;
- while(correct!=3)//當correct不等於3的時候
- {
- int a=rand()%10;
- int b=rand()%10;
- cout<<a<<" + "<<b<<" = ";
- int t1=clock();
- cin>>ans;
- int t2=clock();
- if(ans==a+b)//答對
- {
- cout<<"答對了! 本題花了"<<t2-t1<<"毫秒思考"<<endl;
- correct++;
- }
- else
- cout<<"答錯了! 正確答案是"<<a+b<<" 本題花了"<<t2-t1<<"毫秒思考"<<endl;
- score[i]+=t2-t1;
- }
- cout<<name[i]<<"位挑戰者,總共花了"<<score[i]<<"毫秒!"<<endl;
- }
- system("pause");
- return 0;
- }
複製代碼 |