开头好像:
(#include
#include
#include
#include
#include
#define LENGTH 10
using namespace std;
struct student
{
string name;
double grade[3];
}s[LENGTH];
string level(double grade)
{
return grade<85?(grade<70?(grade<55?(grade<40?"Fail":"Pass"):"Credit"):"Merit"):"Distinction";
}
double sum(double *grade, int length)
{
double sum=0;
for(int i=0;i
sum+=grade[i];
}
return sum;
}
double average(double sum, int length)
{
return sum/length;
}
void ascii(char ascii, int length)
{
for(int i=0;i
cout<
}
int main(int argc, char** argv)
{
//==========START==========//
for(int i=0;i
cout<<"Student "<
cout<<"name: ",cin>>s[i].name;
cout<<"Test_1: ",cin>>s[i].grade[0];
cout<<"Assignment: ",cin>>s[i].grade[1];
cout<<"Test_2: ",cin>>s[i].grade[2];
}
cout<
cout<<"Sum",ascii(0x20,4),cout<<"Average";
ascii(0x20,4),cout<<"Level"<
double temp;
cout<
cout<
//==========END==========//
cout<
}
2007-07-11 19:39:08 · 1 個解答 · 發問者 Anonymous in 電腦與網際網路 ➔ 程式設計
提問者的原始碼來源網址:
「http://tw.knowledge.yahoo.com/question/question?qid=1607071012431」。
2007-07-12 21:23:38 補充:
//Power by Visual Studio 2005
#include
#include
#include
#define LENGTH 10
struct student
{
char name[8];
double grade[3];
}s[LENGTH];
char* level(char *buffer, double grade)
{
char *l=grade<85?(grade<70?(grade<55?(grade<40?"Fail":"Pass"):"Credit"):"Merit"):"Distinction";
return strcpy(buffer,l);
}
double sum(double *grade, int length)
{
double sum=0;
int i;
for(i=0;i
sum+=grade[i];
}
return sum;
}
double average(double sum, int length)
{
return sum/length;
}
void ascii(char ascii, int length)
{
int i;
for(i=0;i
printf("%c",ascii);
}
}
int main(int argc, char* argv[]){
//==========START==========//
int i;
char l[10];
for(i=0;i
printf("Student %d Grades\n",i+1);
printf("name: "),scanf("%s",s[i].name);
printf("Test_1: "),scanf("%lf",&s[i].grade[0]);
printf("Assignment: "),scanf("%lf",&s[i].grade[1]);
printf("Test_2: "),scanf("%lf",&s[i].grade[2]);
}
printf("\nName"),ascii(0x20,4),printf("Test_1"),ascii(0x20,4);
printf("Assignment"),ascii(0x20,4),printf("Test_2"),ascii(0x20,4);
printf("Sum"),ascii(0x20,4),printf("Average");
ascii(0x20,4),printf("Level\n");
for(i=0;i
double temp;
printf("%-8s%-10.0lf",s[i].name,s[i].grade[0]);
printf("%-14.0lf%-10.0lf",s[i].grade[1],s[i].grade[2]);
temp=sum(s[i].grade,3),printf("%-7.2lf",temp);
temp=average(temp,3);
printf("%-11.2lf%-s\n",temp,level(l,temp));
}
//==========END==========//
printf("\n"),system("PAUSE");
return 0;
}
2007-07-12 17:23:38 · answer #1 · answered by Big_John-tw 7 · 0⤊ 0⤋