没注释的源代码
#include <iostream>
using namespace std;
void avsco(float *pscore,float *paver);
void avcour1(char(*pcourse)[10],float *pscore);
void fail2(char course[5][10],int num[],float *pscore,float aver[4]);
void good(char course[5][10],int num[4],float *pscore,float aver[4]);
int main()
{
int i,j,*pnum,num[4];
float score[4][5],aver[4],*pscore,*paver;
char course[5][10],(*pcourse)[10];
cout<<"please input course:"<<endl;
pcourse=course;
for(i=0;i<5;i++)
cin>>course[i];
cout<<"please input NO.and scores:"<<endl;
cout<<"NO.";
for(i=0;i<5;i++)
cout<<","<<course[i];
cout<<endl;
pscore=&score[0][0];
pnum=&num[0];
for(i=0;i<4;i++)
{
cin>>*(pnum+i);
for(j=0;j<5;j++)
cin>>*(pscore+5*i+j);
}
paver=&aver[0];
cout<<endl;
avsco(pscore,paver);
avcour1(pcourse,pscore);
cout<<endl;
fail2(pcourse,pnum,pscore,paver);
cout<<endl;
good(pcourse,pnum,pscore,paver);
return 0;
}
void avsco(float *pscore,float *paver)
{
float sum,average;
for(int i=0;i<4;i++)
{
sum=0;
for(int j=0;j<5;j++)
sum+=(*(pscore+5*i+j));
average=sum/5;
*(paver+i)=average;
}
}
void avcour1(char(*pcourse)[10],float *pscore)
{
float sum,averge1;
sum=0;
for(int i=0;i<4;i++)
{
sum+=(*(pscore+5*i));
}
averge1=sum/4;
cout<<"course 1:"<<*pcourse<<",average score:"<<averge1<<endl;
}
void fail2(char course[5][10],int num[],float *pscore,float aver[4])
{
cout<<"student who failed in two courses:"<<endl;
cout<<"NO. ";
for(int i=0;i<5;i++)
cout<<course[i]<<" ";
cout<<" average"<<endl;
for(int i=0;i<4;i++)
{
int label=0;
for(int j=0;j<5;j++)
if(*(pscore+5*i+j)<60) label++;
if(label>=2)
{
cout<<num[i]<<" ";
for(int k=0;k<5;k++)
cout<<*(pscore+5*i+k)<<" ";
cout<<" "<<aver[i]<<endl;
}
}
}
void good(char course[5][10],int num[4],float *pscore,float aver[4])
{
cout<<"students whose score is good:"<<endl;
cout<<"NO. ";
for(int i=0;i<5;i++)
cout<<course[i]<<" ";
cout<<" average"<<endl;
for(int i=0;i<4;i++)
{
int n=0;
for(int j=0;j<5;j++)
if(*(pscore+5*i+j)>85) n++;
if((n==5)||(aver[i]>=90))
{
cout<<num[i]<<" ";
for(int k=0;k<5;k++)
cout<<*(pscore+5*i+k)<<" ";
cout<<" "<<aver[i]<<endl;
}
}
}