/*********************************
* 程序名:p5-2.cpp *
* 功 能:数组应用——冒泡程序 *
*********************************/
#include<iostream>
using namespace std;
int main()
{ const int MaxN=5;
int n,a[MaxN],i,j;
for(n=0;n<MaxN;n++)
{
cin>>a[n];
if(a[n]<0)
break;
}
//对数组元素逐趟进行冒泡排序
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(a[i]<a[j])
{
int t;
t=a[i];
a[i]=a[j];
a[j]=t;
}
for(i=0;i<n;i++)
cout<<a[i]<<"\t";
return 0;
}
/***********************************************************
* 程序名:123 *
* 功 能:求学生多功课的总分,并求所有学生各门功课的平均分*
***********************************************************/
#include <iostream>
using namespace std;
int main()
{
const int MaxN=100,CourseN=5;
int n,score[MaxN][CourseN+1]={0};
float aver[CourseN+1]={0};
for(n=0;n<MaxN;n++)
{
for(int j=0;j<CourseN;j++)
cin>>score[n][j];
if(score[n][0]<0) break;
}
for(int i=0;i<n;i++)
for(int j=0;j<CourseN;j++)
score[i][CourseN]=score[i][CourseN]+score[i][j];
for(int j=0;j<CourseN+1;j++)
{
for(int i=0;j<n;i++)
aver[j]=aver[j]+score[i][j];
aver[j]=aver[j]/n;
}
for(i=0;i<n;i++)
{
for(int j=0;j<CourseN+1;j++)
cout<<score[i][j]<<"\t";
cout<<endl;
}
cout<<"--------------------------------"<<endl;
for(i=0;i<CourseN+1;i++)
cout<<aver[i]<<"\t";
cout<<endl;
return 0;
}
/***************************************
* 功能:字符串排序与查找 *
* *
***************************************/
#include<iostream>
using namespace std;
const NameLen=20;
void order(char name[][NameLen],int n)
{
char temp[NameLen];
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
if(strcmp(name[i],name[j])>0)
{
strcpy(temp,name[i]);
strcpy(name[i],name[j]);
strcpy(name[j],temp);
}
}
int find(char name[][NameLen],int n,char searchname[NameLen])
{
for(int i=0;i<n;i++)
if(strcmp(name[i],searchname)==0)
return i+1;
else if(strcmp(name[i],searchname)>0)
return 0;
return 0;
}
int main()
{
char NameTab[][NameLen]={"GongJing","LiuNa","HuangPin","ZhouZijun",
"LianXiaoLei","ChenHailing","GuiPeng","LiuPing"};
char searchname[NameLen];
int n=sizeof(NameTab)/NameLen;
order(NameTab,n);
for(int i=0;i<n;i++)
cout<<i+1<<'\t'<<NameTab[i]<<endl;
cout<<"Input the searching name:";
cin>>searchname;
if(n=find(NameTab,n,searchname))
cout<<"Position:"<<n<<endl;
else
cout<<"Not found!"<<endl;
return 0;
}