91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

(1)通過鍵盤輸入各學生的多門課程的成績,建立相應的文件input.dat。 (2)對文件input.dat中的數據進行處理,要求具有如下功能: 1) 按各門課程成績排序,并生成相應的文件輸出。 2) 計算每人的平均成績,按平均成績排序,并生成文件。 3) 求出各門課程的平均成績、最高分、最低分、不及格人數、60~69分人數、70~79分人數、80~89分人數、90分以上人數。 4) 根據姓名或學號查詢某人的各門課成績,重名情況也能處理。 (3)界面美觀。

資源截圖

代碼片段和文件信息

/*10.2.5?成績分析問題
[問題描述]
錄入、保存一個班級學生多門課程的成績,并對成績進行分析。
[基本要求]
(1)通過鍵盤輸入各學生的多門課程的成績,建立相應的文件input.dat。
(2)對文件input.dat中的數據進行處理,要求具有如下功能:
1) 按各門課程成績排序,并生成相應的文件輸出。
2) 計算每人的平均成績,按平均成績排序,并生成文件。
3) 求出各門課程的平均成績、最高分、最低分、不及格人數、60~69分人數、70~79分人數、80~89分人數、90分以上人數。
4) 根據姓名或學號查詢某人的各門課成績,重名情況也能處理。
(3)界面美觀。*/
/*........................................................................................*/
#include?
#include?
#include?
struct?STUDENT
{
char?no[7];
char?name[9];
int?math;
int?eng;
int?com;
struct?STUDENT?*next;
};

typedef?struct?STUDENT?linklist;
linklist?*head=NULL;

void?initlinklist()?//單鏈表的初始化,生成一個空的單鏈表
{
head=(linklist?*)malloc(sizeof(linklist));?//生成頭結點
head->next=NULL;
}

linklist?*findn(linklist?*headchar?*no)??//查找指定學號的學生,返回該結點的地址
{
linklist?*p;
p=head->next;
while(p)
{
if(strcmp(p->nono)==0)
return?p;
p=p->next;
}
return?NULL;
}
linklist?*findm(linklist?*headchar?*name)??//查找指定姓名的學生,返回該結點的地址
{
linklist?*p;
p=head->next;
while(p)
{
if(strcmp(p->namename)==0)
return?p;
p=p->next;
}
return?NULL;
}

linklist?*finds(linklist?*headint?score)??//查找指定數學成績的學生,返回該結點的地址
{
linklist?*p;
p=head->next;
while(p)
{
if(p->math==score) //比較是否相等相等就確定找到
return?p;
p=p->next;
}
return?NULL;
}

linklist?*finde(linklist?*headint?score)??//查找指定英語成績的學生,返回該結點的地址
{
linklist?*p;
p=head->next;
while(p)
{
if(p->eng==score) //比較是否相等相等就確定找到
return?p;
p=p->next;
}
return?NULL;
}

linklist?*findc(linklist?*headint?score)??//查找指定計算機成績的學生,返回該結點的地址
{
linklist?*p;
p=head->next;
while(p)
{
if(p->com==score) //比較是否相等相等就確定找到
return?p;
p=p->next;
}
return?NULL;
}
void?creat()
{
//錄入學生信息
struct?STUDENT?*p;
while(1)
{
p=(struct?STUDENT?*)malloc(sizeof(struct?STUDENT));
printf(“學號:“);
fflush(stdin);
gets(p->no);
printf(“姓名:“);
fflush(stdin);
gets(p->name);
printf(“數學成績:“);
fflush(stdin);
scanf(“%d“&(p->math));
printf(“英語成績:“);
fflush(stdin);
scanf(“%d“&(p->eng));
printf(“計算機成績:“);
fflush(stdin);
scanf(“%d“&(p->com));
p->next=head->next;
head->next=p;

printf(“是否要繼續錄入?(y/n)“);
fflush(stdin);
if(getchar()==‘n‘)break;
}
}

void?prnt(linklist?*p)???//輸出單條記錄
{
printf(“\n---------------------------------------------------\n“);
printf(“?學號:%s“p->no);
printf(“\t姓名:%s“p->name);
printf(“\t數學:%d“p->math);
printf(“\t英語:%d“p->eng);
printf(“\t計算機:%d“p->com);
printf(“\n---------------------------------------------------\n“);
}

void?search()??//查找指定學號的學生
{
char?no[7];
char?name[9];
linklist?*p=NULL;
printf(“學號查詢請輸入1,姓名查詢輸入0:??“);
fflush(stdin);
if(getchar()==‘1‘)
{
printf(“按學號查詢:\n“);
printf(“請輸入要查詢的學號:“);
fflush(stdin);
gets(no);
if(p=findn(headno))
{
prnt(p); //傳遞指針位置
}
else?printf(“對不起,沒有找到滿足條件記錄!\n“);
}
else
{
printf(“按姓

評論

共有 條評論