C言語は簡単な成績管理システムを実現する
26596 ワード
C言語は簡単な成績管理システムを実現する
実験内容は1クラスの学生のすべての成績情報(20人以上)を収集したと仮定し、C言語で簡単な成績管理システムを作成し、学生の個人情報を管理し、入力、閲覧、照会、修正、ソート、統計などの機能を行うことができる.情報内栄には,(1)学生の学号(2)学生の名前(3)学生の成績(国語,数学,英語,コンピュータ,課程平均点)が含まれる.1.入力、閲覧機能:学生情報(学号、氏名、国語、数学、英語、コンピュータ)表示システムのすべての情報を学号順に入力する.2.照会機能:学号末尾番号が09の学生のすべての情報を照会して表示する.3.修正機能:学号末尾番号12の学生の成績情報(いずれか2つでよい)を修正し、その学生のすべての情報を表示する.4.並べ替え機能:国語の成績順に、すべての学生の情報を高いから低いまで表示する.5.統計機能:学生の平均成績を統計し、出力(学号、氏名、平均成績)
実験内容は1クラスの学生のすべての成績情報(20人以上)を収集したと仮定し、C言語で簡単な成績管理システムを作成し、学生の個人情報を管理し、入力、閲覧、照会、修正、ソート、統計などの機能を行うことができる.情報内栄には,(1)学生の学号(2)学生の名前(3)学生の成績(国語,数学,英語,コンピュータ,課程平均点)が含まれる.1.入力、閲覧機能:学生情報(学号、氏名、国語、数学、英語、コンピュータ)表示システムのすべての情報を学号順に入力する.2.照会機能:学号末尾番号が09の学生のすべての情報を照会して表示する.3.修正機能:学号末尾番号12の学生の成績情報(いずれか2つでよい)を修正し、その学生のすべての情報を表示する.4.並べ替え機能:国語の成績順に、すべての学生の情報を高いから低いまで表示する.5.統計機能:学生の平均成績を統計し、出力(学号、氏名、平均成績)
#include
#include
int n=5;
int no;
struct stu
{
char name[20];
int num;
int chinese;
int math;
int english;
int computer;
float average;
}student[5];
//1.
void student_scanf(int n)
{
for(int i=0;i<n;i++)
{ printf(" %d :
",i+1);
printf("
");
scanf("%d%s%d%d%d%d",&student[i].num,&student[i].name,&student[i].chinese,&student[i].math,&student[i].english,&student[i].computer);
student[i].average=(student[i].chinese+student[i].math+student[i].english+student[i].computer)/4.0;
}
}
void student_printf(int n)
{
printf("
");
for(int i=0;i<n;i++)
{
printf("%d\t%s\t%d\t%d\t%d\t%d\t%f
",student[i].num,student[i].name,student[i].chinese,student[i].math,student[i].english,student[i].computer,student[i].average);
}
}
void student_seek(int no)
{
int j=0;
for(int i=0;i<n;i++)
{
if (no==student[i].num)
{
j=1;
printf(" :%d :%s :%d :%d :%d :%d ;%f
",student[i].num,
student[i].name,student[i].chinese,student[i].math,student[i].english,student[i].computer,student[i].average);
break;
}
}
if(j==0) printf(" !
");
}
void student_alter(int no)
{
for(int i=0;i<n;i++)
{
if (no==student[i].num)
{
printf(" :");
scanf("%s",&student[i].name);
printf(" :");
scanf("%d",&student[i].chinese);
printf(" :");
scanf("%d",&student[i].math);
printf(" :");
scanf("%d",&student[i].english);
printf(" :");
scanf("%d",&student[i].computer);
student[i].average=(student[i].chinese+student[i].math+student[i].english+student[i].computer)/4.0;
printf(" :");
printf("%d\t%s\t%d\t%d\t%d\t%d\t%f
",student[i].num,student[i].name,student[i].chinese,
student[i].math,student[i].english,student[i].computer,student[i].average);
}
}
}
void student_sort_chinese()
{
for (int i = 0; i < n - 1; i++)
{
for (int j = 0; j < n - i - 1; j++)
{
if (student[j].chinese < student[j + 1].chinese)
{
stu temp = student[j];
student[j] = student[j + 1];
student[j + 1] = temp;
}
}
}
}
void Statistics()
{
printf(" \t \t
");
for(int i=0;i<n;i++)
{
printf("%d\t%s\t%f
",student[i].num,student[i].name,student[i].average);
}
}
int main(){
student_scanf(n);
student_printf(n);
printf(" :");
scanf("%d",&no);
student_seek(no);
printf(" ");
scanf("%d",&no);
student_alter(no);
printf(" :
");
student_sort_chinese() ;
student_printf(n);
printf(" :
");
Statistics();
return 0;
}