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

資源簡介

編寫有一個程序,該程序輸入教師編號和完成的教學量,程序允許同一教師有多次輸入,由程序對其完成的教學量實現累計。程序按完成數量對他們排序,并確定他們的名次。按完成的教學量由多到少的順序,輸出名次、同一名次的教師人數及他們的編號(編號由小到大順序輸出)。要求程序用有序鏈表存儲數據信息。 提示:教學量包括授課、實驗、課程設計、畢業設計。

資源截圖

代碼片段和文件信息

#include???//標準輸入、輸出頭文件
#include??//包含字符串函數處理頭文件
#include??//包含動態存儲與釋放函數頭文件
#include??//?system
#define?TEALEN?sizeof(teanode)??//教師信息結構體長度
#define?LEN?sizeof(Lnode)??//鏈表節點長度
#define?MAX?10
int?SAME[MAX];


typedef?struct?teanode
{
char?name[10];?//教師姓名
int?lesson;????//授課工作量
int?exper;?????//實驗工作量
int?cdesign;???//課程設計工作量
int?gdesign;???//畢業設計工作量
int?total;?????//總工作量
int?pos;???????//排序位置
}teanode*linknode;//教師信息結構體

typedef?struct?Lnode
{
char?no[20];??//教師編號
linknode?info;???//節點信息詳細指針指向教師信息結構體
struct?Lnode?*prior*next;??//雙向鏈表指針域
}Lnode*linklist;//鏈表節點

void?newLnode();
void?initlist();
void?prin();

void?initlist(linklist?*T)
{
*T=(linklist)malloc(LEN);
(*T)->info=(linknode)malloc(TEALEN);//為頭結點申請空間
(*T)->prior=*T;//設置頭結點的前驅指針
(*T)->next=*T;//設置頭結點的后繼指針
}//初始化雙向循環鏈表

void?newLnode(linklist*p)
{
*p=(linklist)malloc(LEN);//新節點
if(!p)
{
printf(“申請節點失敗“);
exit(0);
}
(*p)->info=(linknode)malloc(TEALEN);
}

void?prin(linklist?*?L)
{

if(L==NULL)
{
printf(“沒有可以顯示的信息\n“);
return;
}
linklist?p=(*L)->next;
// printf(“********************************************************************************\n“);
printf(“教師編號??教師姓名??工作量排名??工作總量\n\n“);
while?(p!=*L)
{

printf(“%7s%9s%10d%10d\n“p->nop->info->namep->info->posp->info->total);
p=p->next;
}
}

void?main()?
{
linklist?input(linklist?L);
linklist?sort(linklist?L);
int??j;//用來判斷是否結束
linklist?L;
initlist(&L);
????
????do{
system(“cls“);//清屏函數
printf(“??????????????★---?????您好,歡迎進入教師工作量統計系統!????---★\n“);
????????printf(“================================================================================\n“);
????????printf(?“???????????--------?☆????????1.輸入教師工作量信息????????☆--------?\n\n“
???? “???????????--------?☆????????2.進行教師工作量排序????????☆--------?\n\n“
???? “???????????--------?☆????????3.顯示教師工作量情況????????☆--------?\n\n“
???? “???????????--------?☆????????0.退出??????????????????????☆--------?\n\n“);
????????printf(“================================================================================\n“);
????????printf(“請在0-3中選擇以回車鍵結束:\n\n“);
????????scanf(“%d“&j);
????????switch(j)?{
case?1:
L=input(L);
prin(&L);
printf(“錄入結束\n“);
system(“pause“);
????????????break;

case?2:
L=sort(L);
printf(“排序成功\n“);
system(“pause“);
????????????break;
case?3:
prin(&L);
system(“pause“);
????????????break;
case?0:;
????????????break;
????????}
????}while(j!=0);?????
????printf(“謝謝使用,再見!\n“);
}//主函數結束

linklist?input(linklist?L)
{
linklist?workload(linklist?p);
linklist?adworkload(linklist?p);
linklist?searinsert(linklist?Llinklist?p);
linklist?sort(linklist?L);
int?flag=0;
char?no[10];
linklist?p;

p=L->next;
for(;;)
{
if(flag==1)
break;
printf(“請輸入教師編號輸入@結束:\n\n“);
scanf(“%s“no);
???if(no[0]==‘@‘)
{
flag=1;
break;
}


評論

共有 條評論