劳烦大神看一下,怎么修改啊,怎么查找啊。在现有的基础上。
1 #include<iostream> 2 #include<fstream> 3 #include<string> 4 #include<cstring> 5 using namespace std; 6 class date 7 { 8 public: 9 string name; 10 int num; 11 date(){num=0;name="";}; 12 }; 13 void swap(string s1,string s2) 14 { 15 string temp; 16 temp=s1; 17 s1=s2; 18 s2=temp; 19 } 20 void readfile(date*&na,int &number) 21 { 22 ifstream infile("WZ.txt"); 23 if(!infile) 24 { 25 cout<<"cannot open!"<<endl; 26 return; 27 } 28 while(infile) 29 { 30 string temp; 31 infile>>temp; 32 for(int i=0 ;i<number;i++) 33 { 34 if(temp==na[i].name) 35 { 36 na[i].num++;break; 37 } 38 } 39 if(i==number&&na[i].name!=temp) 40 { 41 na[number].name=temp; 42 na[number].num++; 43 number++; 44 } 45 }; 46 int max=1000; 47 string str; 48 int t; 49 for(int i=0;i<number;i++) 50 { 51 if(na[i].num<na[i+1].num) 52 { 53 swap(na[i].name,na[i+1].name); 54 t=na[i].num; 55 na[i].num=na[i+1].num; 56 na[i+1].num=t; 57 } 58 } 59 for(int j=0;j<15;j++) 60 { 61 cout<<na[j].name<<" "<<na[j].num<<endl; 62 } 63 infile.close(); 64 } 65 66 void main() 67 { 68 date*na=new date[1000]; 69 int number=0; 70 readfile(na,number); 71 72 }