日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

中国计算机设计大赛赛事统计预习报告

發(fā)布時(shí)間:2024/1/1 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 中国计算机设计大赛赛事统计预习报告 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文章目錄

  • 一、問題描述和基本要求
  • 二、問題分析和任務(wù)定義
          • 1.數(shù)據(jù)結(jié)構(gòu)的選取
          • 2.問題分析
          • 3.功能分析
  • 三、邏輯設(shè)計(jì)
          • 1.變量的類型說明:
          • 2.變量說明
          • 3.函數(shù)說明
          • 4.抽象數(shù)據(jù)結(jié)構(gòu)
  • 四、物理結(jié)構(gòu)
          • 1.存儲結(jié)構(gòu)
          • 2.模塊設(shè)計(jì)
          • 3.函數(shù)設(shè)計(jì)
          • 4.算法流程圖
  • 五、測試數(shù)據(jù)
  • 六、具體函數(shù)實(shí)現(xiàn)

一、問題描述和基本要求

【問題描述】
參加計(jì)算機(jī)設(shè)計(jì)大賽的n個(gè)學(xué)校編號為1n,賽事分成m個(gè)項(xiàng)目,項(xiàng)目的編號為1m.比賽獲獎(jiǎng)按照得分降序,取前三名,寫一個(gè)統(tǒng)計(jì)程序產(chǎn)生各種成績單和得分報(bào)表。
【基本要求】
1)每個(gè)比賽項(xiàng)目至少有10支參賽隊(duì);每個(gè)學(xué)校最多有6支隊(duì)伍參賽;
2)能統(tǒng)計(jì)各學(xué)校的總分;
3)可以按照學(xué)校編號或名稱,學(xué)校的總分、各項(xiàng)目的總分排序輸出;
4)可以按學(xué)校編號查詢學(xué)校某個(gè)項(xiàng)目的獲獎(jiǎng)情況;可以按項(xiàng)目編號查詢?nèi)〉们叭膶W(xué)校;
5)數(shù)據(jù)存入文件并能隨時(shí)查詢
【設(shè)計(jì)要求】
1)輸入數(shù)據(jù)形式和范圍:可以輸入學(xué)校的名稱,賽事項(xiàng)目的名稱。
2)輸出形式:有中文提示,各學(xué)校分?jǐn)?shù)為整數(shù)
3)界面要求:交互設(shè)計(jì)要合理,每個(gè)功能可以設(shè)立菜單,根據(jù)提示,可以完成相關(guān)功能的要求。
4)存儲結(jié)構(gòu):學(xué)生自己根據(jù)系統(tǒng)功能要求自己設(shè)計(jì),但是賽事相關(guān)數(shù)據(jù)要存儲在文件中。
【測試數(shù)據(jù)】
要求使用全部合法數(shù)據(jù),整體非法數(shù)據(jù),局部非法數(shù)據(jù)。進(jìn)行程序測試,以保證程序的穩(wěn)定。
【實(shí)現(xiàn)提示】
假設(shè)3<賽事項(xiàng)目數(shù)量<=10,學(xué)校名稱長度不超過20個(gè)字符。每個(gè)賽事結(jié)束時(shí),將其編號、名稱輸入,并依次輸入?yún)①悓W(xué)校編號、學(xué)校名稱和成績.

二、問題分析和任務(wù)定義

1.數(shù)據(jù)結(jié)構(gòu)的選取

本項(xiàng)目使用結(jié)構(gòu)體作為數(shù)據(jù)結(jié)構(gòu),分別用學(xué)校(school)、團(tuán)隊(duì)(team)、項(xiàng)目(project)來表示比賽的相關(guān)信息。

2.問題分析

本題目中,并沒有給我們相關(guān)的比賽信息,所以需要我們自己去輸入或用隨機(jī)數(shù)生成,但要能保存在數(shù)據(jù)里,留待下一次的取用,同時(shí)要注意題目對相關(guān)數(shù)量的要求。
項(xiàng)目project盡量在3-10個(gè)左右
學(xué)校school要能保證使每個(gè)項(xiàng)目至少10只隊(duì)伍
團(tuán)隊(duì)team要保證每個(gè)學(xué)校不能超過六個(gè)
注意每個(gè)team只能選一個(gè)項(xiàng)目

3.功能分析

(1)能夠隨時(shí)添加相關(guān)信息;
(2)照學(xué)校編號或名稱查詢,學(xué)校的總分輸出;
(3)按學(xué)校編號查詢學(xué)校某個(gè)項(xiàng)目的獲獎(jiǎng)情況;
(4)可以按項(xiàng)目編號查詢?nèi)〉们叭膶W(xué)校(注意并列的情況);
(5)可以查詢?nèi)我忭?xiàng)目的總分;

三、邏輯設(shè)計(jì)

1.變量的類型說明:
school類name(名字)、length(參賽隊(duì)伍數(shù)量)、sum(學(xué)??偡?
team類score(團(tuán)隊(duì)得分)、jud(參加的項(xiàng)目)
project類score(項(xiàng)目得分)、sum(項(xiàng)目總分)
2.變量說明
sch[n]參加比賽的學(xué)校(School類型)
te[i]參加的隊(duì)伍(Team類型)
pro[m]賽事項(xiàng)目(project類型)
3.函數(shù)說明
readdata()讀取文件里的比賽信息
input()添加新的參賽學(xué)校和隊(duì)伍
readdata()讀取文件里的比賽信息,通過fstream來完成
schoolsum()計(jì)算學(xué)??偡峙琶?/td>
evschoolsum()按照學(xué)校編碼查詢總分
prothree()按項(xiàng)目編號查詢?nèi)〉们叭膶W(xué)校
evprosum()計(jì)算項(xiàng)目總分
schoolaw()按學(xué)校編號查詢學(xué)校某個(gè)項(xiàng)目的獲獎(jiǎng)情況
4.抽象數(shù)據(jù)結(jié)構(gòu)
ADT 計(jì)算機(jī)設(shè)計(jì)大賽賽事統(tǒng)計(jì)Data學(xué)校列表schools<School>項(xiàng)目列表projects<Project>隊(duì)伍列表teams<Team>Operation界面設(shè)計(jì)輸入:無功能:輸出主菜單交互界面輸出:主菜單交互界面讀取數(shù)據(jù)輸入:無功能:讀取文件中的比賽信息輸出:無添加學(xué)校/隊(duì)伍輸入:學(xué)校/隊(duì)伍信息功能:將輸入的信息存入對應(yīng)的結(jié)構(gòu)體數(shù)組中輸出:無輸出學(xué)校/項(xiàng)目總分輸入:無功能:輸出學(xué)校/項(xiàng)目總分輸出:學(xué)校/項(xiàng)目總分輸出任意學(xué)校的總分 輸入:學(xué)校編號功能:根據(jù)編號輸出學(xué)??偡州敵?#xff1a;學(xué)??偡州敵鏊袑W(xué)??偡?#xff0c;總分降序輸出輸入:無功能:降序輸出所有學(xué)??偡州敵?#xff1a;所有學(xué)校總分通過學(xué)校編號查詢各項(xiàng)目總分降序輸出輸入:學(xué)校編號功能:查詢該學(xué)校所有項(xiàng)目分?jǐn)?shù),并且降序輸出輸出:學(xué)校所有項(xiàng)目分?jǐn)?shù) 按學(xué)校編號查詢學(xué)校某個(gè)項(xiàng)目的獲獎(jiǎng)情況輸入:學(xué)校編號和項(xiàng)目編號功能:查詢該學(xué)校對應(yīng)項(xiàng)目的獲獎(jiǎng)情況輸出:該學(xué)校對應(yīng)項(xiàng)目的獲獎(jiǎng)情況按項(xiàng)目編號查詢?nèi)〉们叭膶W(xué)校 輸入:項(xiàng)目編號功能:查詢該項(xiàng)目取得前三名的學(xué)校輸出:該項(xiàng)目取得前三名的學(xué)校編號退出程序輸入:N功能:退出程序輸出:無 end ADT

四、物理結(jié)構(gòu)

1.存儲結(jié)構(gòu)

1.定義結(jié)構(gòu)體school類和team類,并在school類中存放team類數(shù)組
2.定義結(jié)構(gòu)體project類表示項(xiàng)目

2.模塊設(shè)計(jì)

1.主函數(shù)模塊
2.讀取數(shù)據(jù)和輸入模塊
3.計(jì)算總分降序輸出模塊
4.獲得項(xiàng)目排名模塊

3.函數(shù)設(shè)計(jì)
偽代碼: 1.school類:name(名字)length(參賽隊(duì)伍數(shù)量)、sum(學(xué)??偡?span id="ozvdkddzhkzd" class="token punctuation">); 2.team類: score(團(tuán)隊(duì)得分)jud(參加的項(xiàng)目); 3.project類:score(項(xiàng)目得分)sum(項(xiàng)目總分); 4.sch[n]; 5.te[i]; 6.pro[m]; 7.readdata(){讀取文件里的比賽信息,通過fstream來完成} 8.input(){添加比賽信息} 9.evschoolsum(){查詢各個(gè)學(xué)校的總分,并降序輸出} 10.schoolsum(){按編號查詢學(xué)??偡?span id="ozvdkddzhkzd" class="token punctuation">} 11.prothree(){按項(xiàng)目編號查詢?nèi)〉们叭膶W(xué)校} 12.evprosum() {計(jì)算項(xiàng)目總分 } 13.schoolaw(){按學(xué)校編號查詢學(xué)校某個(gè)項(xiàng)目的獲獎(jiǎng)情況}
4.算法流程圖

五、測試數(shù)據(jù)


六、具體函數(shù)實(shí)現(xiàn)

1.schoolsum()

void schoolsum() //根據(jù)編號查詢學(xué)??偡?/span> {int a;cout << "目前共有" << n << "個(gè)學(xué)校參賽" << endl;cout << "請輸入需要查詢總分的學(xué)校編號(1-" << n << ")" << endl;while (true){cin >> a;if (!cin.good()||a<1 || a>n)cout << "輸入編號有誤,請重新輸入" << endl;else break;cin.clear();cin.ignore(1024, '\n');}cout << "該學(xué)校的總分為" << sch[a - 1].sum << endl; }

2.evschoolsum()

void evschoolsum() //各學(xué)??偡?#xff0c;降序輸出 {int a[100];int b[100];for (int i = 0; i < n; i++)a[i] = sch[i].sum;sort(a, a + n); //對數(shù)組排序for (int i = 0; i < n; i++){for (int j = 0; j < n; j++){if (sch[j].sum == a[i])b[i] = j;}}cout << "學(xué)校編號" <<" " << "學(xué)校名稱" << " " << "總分" << endl;for (int i = 0; i < n; i++) //降序輸出{cout << " " << b[n-i-1]+1 <<" " <<sch[b[n-i-1]].name<< " " << a[n - i - 1] << endl;} }

3.evprosum()

void evprosum() //項(xiàng)目總分 {cout << "項(xiàng)目" << " " << "總分" << endl;for (int i = 0; i < 6; i++){cout << " " << i+1 << " " << pro[i].sum << endl;} }

4.scevprosum()

void scevprosum() //根據(jù)學(xué)校編號查詢各個(gè)項(xiàng)目得分 {int x;cout << "請輸入所需要查詢的學(xué)校編號(1-" << n << ")" << endl;while (true){cin >> x;if (!cin.good()||x<1 || x>n)cout << "輸入編號有誤,請重新輸入" << endl;else break;cin.clear();cin.ignore(1024, '\n');}int a[20];int b[20];for (int i = 0; i < sch[x - 1].length; i++)a[i] = sch[x - 1].te[i].sc;sort(a, a + sch[x - 1].length); //對數(shù)組排序for (int i = 0; i < sch[x - 1].length; i++){for (int j = 0; j < sch[x - 1].length; j++){if (sch[x-1].te[j].sc == a[i])b[i] = sch[x - 1].te[j].jud;}}cout << "項(xiàng)目編號" << " " << "總分" << endl;for (int i = 0; i < sch[x - 1].length; i++) //降序輸出{cout << " " << b[sch[x - 1].length - i - 1] <<" " << a[sch[x - 1].length - i - 1] << endl;} }

5.prothree()

void prothree() //根據(jù)編號查詢項(xiàng)目的前三名 {int x;int y = 0;int a[100];int b[3];cout << "請輸入需要查詢排名的項(xiàng)目編號(1-6)" << endl;while (true){cin >> x;if (!cin.good()||x < 1 || x>6)cout << "輸入編號有誤,請重新輸入" << endl;else break;cin.clear();cin.ignore(1024, '\n');}for (int i = 0; i < n; i++)a[i] = pro[x-1].score[i];sort(a, a + n);for (int i = n-1; i > n-4; i--){for (int j = 0; j < n; j++){if (pro[x-1].score[j] == a[i])b[y++] = j+1;}}if (b[0] == b[1]){cout << "該項(xiàng)目的第一名為: 學(xué)校" << b[0] <<"和學(xué)校"<<b[1]<< endl;cout << "該項(xiàng)目的第二名為: 學(xué)校" << b[1] << endl;}else if (b[1] == b[2]){cout << "該項(xiàng)目的第一名為: 學(xué)校" << b[0] << endl;cout << "該項(xiàng)目的第二名為: 學(xué)校" << b[1] << "和學(xué)校" << b[2] << endl;}else if(b[0]==b[1]==b[2]){cout << "該項(xiàng)目的第一名為: 學(xué)校" << b[0] << "和學(xué)校" << b[1] <<"和學(xué)校"<<b[2]<< endl;}else{cout << "該項(xiàng)目的第一名為: 學(xué)校" << b[0] << endl;cout << "該項(xiàng)目的第二名為: 學(xué)校" << b[1] << endl;cout << "該項(xiàng)目的第三名為: 學(xué)校" << b[2] << endl;} }

6.schoolaw()

void schoolaw() //查詢?nèi)我鈱W(xué)校任意項(xiàng)目獲獎(jiǎng)情況 {int a;int b;int jud = 0;cout << "請輸入所需要查詢的學(xué)校編號(1-" <<n <<")" << endl;while (true){cin >> a;if (!cin.good()||a<1 || a>n)cout << "輸入編號有誤,請重新輸入" << endl;else break;cin.clear();cin.ignore(1024, '\n');}cout << "請輸入需要查詢的項(xiàng)目編號(1-6)" << endl;while (true){cin >> b;if (!cin.good()||b < 1 || b>6)cout << "暫無該編號項(xiàng)目,請重新輸入" << endl;else break;cin.clear();cin.ignore(1024, '\n');}int c[100];for (int i = 0; i < n; i++)c[i] = pro[b-1].score[i];sort(c, c + n);for (int i = n - 1; i > n - 4; i--){if(pro[b-1].score[a-1]==c[i]){cout<<"該學(xué)校在該項(xiàng)目中獲得第"<<abs(i-n)<<"名"<<endl;jud = 1;break;}}if (jud == 0)cout << "該學(xué)校在該項(xiàng)目中沒有獲獎(jiǎng)" << endl; }

以上代碼均能ac。

總結(jié)

以上是生活随笔為你收集整理的中国计算机设计大赛赛事统计预习报告的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 四虎成人精品在永久免费 | 久久久国产精品人人片 | 国产传媒视频 | 播放灌醉水嫩大学生国内精品 | 91国内| 永久免费看片在线观看 | 国产精品成人av性教育 | 色呦呦网站 | 久久久777| 亚洲精品国产精品国自产 | 国产精彩视频一区 | 4虎最新网址| 成人免费毛片观看 | 久久免费网 | 曰韩在线 | 一区二区三区国产精品 | 992tv人人草 国产第6页 | 最新在线中文字幕 | 成人激情视频在线 | av免费的| 欧美精品一区二区免费 | 福利社区一区二区 | 久久丫精品忘忧草西安产品 | 日韩午夜免费视频 | 国产福利视频网站 | 特黄视频在线观看 | 狠狠做| 欧美高清视频在线观看 | 国产情侣酒店自拍 | 中国新婚夫妻性猛交 | 视频区小说区图片区 | 欧美午夜久久 | 青青草精品在线 | 国产精品久久久久无码av色戒 | 强行糟蹋人妻hd中文 | 一区二区三区四区免费视频 | 天美视频在线观看 | 中文字幕一区二区三区人妻 | 日本吃奶摸下激烈网站动漫 | 丰满人妻中伦妇伦精品app | 中文字幕av在线免费 | yw视频在线观看 | 波多野结衣亚洲一区二区 | 在线观看免费视频国产 | 色综合久久天天综合网 | 成人福利网址 | 亚洲播放器 | 天天操天天曰 | 日韩城人视频 | 污污内射久久一区二区欧美日韩 | 欧美成人午夜77777 | av老司机在线 | 亚洲成人中文 | 麻豆传媒在线观看 | 亚洲自拍偷拍一区 | 日韩中文一区二区 | 韩国一区二区三区视频 | 97国产成人无码精品久久久 | 污污视频在线免费观看 | 97视频在线| va毛片 | 黑人黄色一级片 | 午夜色福利 | 国产草草| 色婷婷九月 | 91一区视频| 亚洲春色在线 | 久久精品日韩无码 | 国产精品欧美一区喷水 | 日韩色av | 日日狠狠久久偷偷四色综合免费 | 老牛av一区二区 | 超碰神马 | 国产福利精品一区 | 午夜视频 | 青青草国产| 自拍偷拍免费 | 国产精品无码白浆高潮 | 国产黄色免费视频 | 91干网| 女裸全身无奶罩内裤内衣内裤 | 久久精品久久精品 | 欧美一级色片 | 午夜婷婷在线观看 | 无遮挡裸光屁屁打屁股男男 | 老师的肉丝玉足夹茎 | 国产一级免费观看 | 欧洲综合色| 贝利弗山的秘密在线观看 | 国产地址一 | 一区二区免费在线播放 | 在线视频免费观看一区 | 国产亚洲精品久久久久久青梅 | 免费毛片视频网站 | 欧美浓毛大泬视频 | 成人精品在线看 | 欧美资源 | 免费精品一区二区 | 91精选视频|