成绩输出(全局变量)带姓名

这篇博客主要介绍了如何在上机实践中运用数组来处理成绩,并结合姓名进行展示,以此来学习数组的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上机目的:学数组

上机内容:学习

/*  
 * Copyright (c) 2012, 烟台大学计算机学院   
* All rights reserved.   
* 作    者:刘杰   
* 完成日期:2012 年12 月9  日   
* 版 本 号:v1.0   
* 输入描述:无    
* 问题描述:输出姓名和成绩  
* 程序输出:无    
* 问题分析:无  
* 算法设计:略   
*/   
#include<iostream>     
#include<string>  
using namespace std; 
 int n ; string name[6];    
double score[6];    
void pxscore();  //按分数排序 
void pxname();  //按姓名排序  
int main()   {           
int i;  	 
cout<<"请输入人数:   ";  	
cin>>n;           
for(i=1;i<=n;++i)       { 
           cout<<"请输入第"<<i<<"位同学的名字:"; 
           
cin>>name[i]; 
           cout<<"请输入第"<<i<<"位同学的成绩:";  
          cin>>score[i];
        }        
cout<<"按成绩排名:"<<endl; 
       pxscore();        
for(i=1;i<=n;++i)       {  
 		
cout<<"第"<<i<<"名:"<<name[i]<<" "<<score[i]<<endl;        
}        
cout<<endl<<"按姓名排名:"<<endl;       
 pxname();
        for(i=1;i<=n;++i)       {    
		cout<<name[i]<<" "<<score[i]<<endl;      
 }   	    
  return 0;      
 }    
void pxscore()    {   
        int j,i,t;     
   string k;      
  for(j=1;j<n;++j)       {  
          for(i=1;i<=n-j;++i)         {               
 if(score[i]<score[i+1]) 
              {                  
 t=score[i];                
    score[i]=score[i+1];   
                 score[i+1]=t; 
                   k=name[i];   
              name[i]=name[i+1];                   
 name[i+1]=k;              
  }           
 }        
   } 
      return; 
  }  
 void pxname()    {       
int j,i,t;     
  string k;      
 for(j=1;j<n;++j)       {     
       for(i=1;i<=n-j;++i)           {             
      if(name[i]<name[i+1])        {  
                k=name[i];    
               name[i]=name[i+1];                   
 name[i+1]=k;     
               t=score[i];  
                  score[i]=score[i+1];                 
   score[i+1]=t;  
 				             }  
          }           
}        return;   
 }    


 

结果:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值