-
大小: 247KB文件類型: .rar金幣: 2下載: 0 次發(fā)布日期: 2021-06-10
- 語言: 其他
- 標(biāo)簽:
資源簡介
一.問題描述
對2006年度全國80多個城市的每天空氣質(zhì)量狀況進(jìn)行查詢、排序等操作。
空氣質(zhì)量狀況對象包括城市代碼、城市名稱、首要污染物、污染指數(shù)、污染物級別、空氣狀況、年、月、日
二、實驗要求
1. 普通查詢:輸入城市名稱和城市代碼,分別查詢該城市每天、每周、每月、每季度和全年的空氣質(zhì)量狀況
例子:查詢太原市2006年第8周的空氣質(zhì)量狀況
2.統(tǒng)計查詢:
(1)輸入城市名稱和城市代碼,分別查詢該城市每周、每月、每季度和全年的空氣質(zhì)量為優(yōu)、良、輕微污染、輕度污染、重污染的天數(shù)
例子:查詢石家莊市2006年第2季度空氣質(zhì)量為輕微污染的總天數(shù)
(2)根據(jù)時間查詢空氣質(zhì)量狀況:輸入周編號、月編號、季度編號或年編號,以及空氣質(zhì)量為優(yōu)、良、輕微污染、輕度污染、重污染的天數(shù),查找相應(yīng)的城市名稱
例子:查詢2006年5月,空氣被輕度污染3天以上的城市有哪些?
3.排序查詢
(1)輸入周編號、月編號、季度編號或年編號,查詢城市空氣質(zhì)量的排行榜
例子:查詢2006年第6周,全國空氣平均質(zhì)量最好的前20個城市為哪些?

代碼片段和文件信息
#include?
#include?
#include??
using?namespace?std;?
//變量定義?
int?data_sum=0cmd;
int?mstmeddstded;
struct?airData{
????string?city_numcity_name;
????string?pul_namepul_rank;
????string?air_state;
????int?pul_numyearmonthday;
}data[30000];
string?City[100]CityN[100];
int?city_sum=0;
//程序?
void?CountWeek(int?week){
????int?add[13]={0312831303130313130313031};
????mst=med=1;
????dst=1;ded=7;
????week--;
????while(week--){
????????mst=med;
????????dst=ded;
????????ded+=6;
????????if(ded>add[med]){
????????????ded-=add[med];
????????????med++;
????????}
????}?
}
void?Print(int?p){
????cout<????cout<????cout<<“首要污染物?[“<????cout<<“污染物級別?[“<}
void?ReadData(){//從“data.txt“讀入原始數(shù)據(jù)?
????int?imark;
????
????ifstream?fin;
????fin.open(“data.txt“);
????
????cout<<“數(shù)據(jù)讀入中請稍候……“< ????
????while(!?fin.eof()){
????????fin>>data[data_sum].city_num>>data[data_sum].city_name;
????????fin>>data[data_sum].pul_name>>data[data_sum].pul_num;
????????fin>>data[data_sum].pul_rank>>data[data_sum].air_state;
????????fin>>data[data_sum].year>>data[data_sum].month>>data[data_sum].day;
????????
????????mark=0;
????????for(i=0;i ????????????if(City[i]==data[data_sum].city_name){
????????????????mark=1;
????????????????break;
????????????}
????????if(!mark){
????????????City[city_sum]=data[data_sum].city_name;
????????????CityN[city_sum]=data[data_sum].city_num;
????????????city_sum++;???
????????}
????????
????????if(data[data_sum].year==data[data_sum-1].year?&&
???????????data[data_sum].month==data[data_sum-1].month?&&
???????????data[data_sum].day==data[data_sum-1].day);
????????else
????????????data_sum++;
????}
????fin.close();
????
????cout<<“數(shù)據(jù)讀入完畢!“< }
void?PrintData(){//數(shù)據(jù)輸出(讀入測試)?
????int?i;
????
????for(i=0;i<=data_sum;i++){
????????cout<????????cout<????????cout<????????cout<????}
}
void?help(){
????cout<<“操作代碼如下:“< ????cout<<“1.普通查詢“< ????cout<<“2.統(tǒng)計查詢“< ????cout<<“3.排序查詢“< ????cout<<“4.退出“< }
int?CheckCity(string?str){
????int?i;
????for(i=0;i ????????if(data[i].city_name==str?||?data[i].city_num==str)
????????????return?i;
????
????return?-1;
}
void?Search_Common(){//普通查詢
????string?str;?
????int?ijwayddmmwwssfind;
????
????cout< ????cout< ????cin>>str;
????cout<
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????1198521??2010-11-29?17:01??data.txt
?????文件????????903??2011-03-08?18:25??problem.txt
?????文件??????27463??2010-12-21?22:41??Air_Quality.cpp
?????文件?????650666??2010-12-21?22:41??Air_Quality.exe
-----------?---------??----------?-----??----
??????????????1877553????????????????????4
評論
共有 條評論