第二周项目一

  1. /*
  2. * 程序的版权和版本声明部分
  3. * Copyright (c)2013, 烟台大学计算机学院学生
  4. * All rightsreserved.
  5. * 文件名称:score.cpp
  6. * 作 者: 王俊
  7. * 完成日期:2013 年3 月12 日
  8. * 版本号: v1.0
  9. * 输入描述:已经在程序中初始化
  10. * 问题描述:将学生成绩信息存储在结构体数组中,对结构体排序并输出
  11. * 输出:按C++降序和按学号升序排序后的学生成绩单
  12. */
  13. *程序代码
    #include <iostream>
    using namespace std;
    struct Score
    {
    	char num[14];
    	int cpp;
    	int math;
    	int english;
    }; 
    //要自定义的函数
    void sort1(Score [],int);
    void sort2(Score [],int);
    void output(Score [],int);
    int main()
    {
    	Score score[]={{"201152501104",65,69 ,68 },
    	{"201152501114",94 ,89 ,63 },
    	{"201152501138",67 ,62 ,84 },
    	{"201152501204",100 ,65 ,91 },
    	{"201152501202",59 ,80 ,55 },
    	{"201152501115",92 ,84 ,60 },
    	{"201152501201",80 ,92 ,71 },
    	{"201152501145",88 ,56 ,67 },
    	{"201152501203",62 ,62 ,95 },
    	{"201152501140",80 ,60 ,86 },
    	{"201152501205",73 ,90 ,94}};
    	int stuNum=sizeof(score)/sizeof(score[0]);
    	//将所有同学按C++降序排序后输出
    	sort1(score,stuNum);
    	cout<<"按C++降序排序后:"<<endl;
    	output(score,stuNum);
    	//将所有同学按学号升序排序后输出
    	sort2(score,stuNum);
    	cout<<"按学号升序排序后:"<<endl;
    	output(score,stuNum);                                                
    	return 0;
    }
    void sort1(Score  score [],int stuNum )
    {
    	int i,j;
    	Score  n ;
    	for(i=0;i<stuNum;i++)
    	{
    		for(j=0;j<stuNum-i-1;j++)
    		if(score[j].cpp<score[j+1].cpp)
    		{
    			n=score[j];
    		score[j]=score[j+1];
    		score[j+1]=n;
    		}
    	}
    return ;
    }
    void sort2(Score score [],int stuNum )
    {
    	int i,j;
    	Score  n;
    	for(i=0;i<stuNum;i++)
    	{
    	for(j=0;j<stuNum-i-1;j++)
    		if(strcmp(score[j].num,score[j+1].num)>0)
    		{
    		n=score[j];
    		score[j]=score[j+1];
    		score[j+1]=n;
    		}
    	}
    return ;
    }
    void output(Score score[],int stuNum ){  
     for(int i=0;i<stuNum;i++)  
     {  
        cout<<score[i].num<<" , "<<score[i].cpp<<" , "<<score[i].english<<" , "<<score[i].math<<endl;   
      }  
    }
    
    
    14.*运行结果:

第二周项目一_第1张图片

15.*心得体会:好久不玩了,突然一往上发程序有些迷茫和生疏,不过我会加油的。

 


 

你可能感兴趣的:(第二周项目一)