?? student.cpp
字號(hào):
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#include"conio.h"
struct stud
{
char name[20];
char sex[20];
int a[7];
};
struct stud sr[100];
int i,j,tmp;
int length=0;
int boy=0;
int sum=0;
int girl=0;
char nv[20]="女",nan[20]="男";
char cl;
void hunyin()
{
printf("學(xué)生成績(jī)管理系統(tǒng)\n");
printf("請(qǐng)選擇: 1,輸入,2,輸出,3,排序,4,編輯修改,5,查詢(xún),6,刪除.7,統(tǒng)計(jì),8,退出\n");
}
void shuru()
{
do
{
printf("請(qǐng)輸入第%d位同學(xué)的姓名:\n",i+1);
scanf("%s",sr[i].name);
getchar();
printf("請(qǐng)輸入第%d位同學(xué)的性別,年齡,學(xué)號(hào),C成績(jī),S成績(jī),H成績(jī):\n",i+1);
scanf("%s%d%d%d%d%d",sr[i].sex,&sr[i].a[0],&sr[i].a[1],&sr[i].a[2],&sr[i].a[3],&sr[i].a[4]);
sr[i].a[5]=sr[i].a[2]+sr[i].a[3]+sr[i].a[4];
sr[i].a[6]=(sr[i].a[5])/3;
i++;
length++;
printf("是否繼續(xù)輸入?y/n\n");
getchar();
}
while(getchar()!='n');
}
void shuchu()
{
printf("\t\t學(xué)生成績(jī)表\n");
printf("姓名\t性別\t年齡\t學(xué)號(hào)\tC成績(jī)\tHTMl\tSQL\t總分\t平均分\t\n");
for(i=0;i<length;i++)
{
printf("%s\t%s\t%d\t%d\t%d\t%d\t%d\t%d\t%d\n",sr[i].name,sr[i].sex,sr[i].a[0],sr[i].a[1],sr[i].a[2],sr[i].a[3],sr[i].a[4],sr[i].a[5],sr[i].a[6]);
}
}
void xm()
{
struct stud tmp;
for(int i=0;i<length-1;i++)
for(j=i+1;j<length;j++)
if(strcmp(sr[i].name,sr[j].name)==-1)
{
tmp=sr[i];
sr[i]=sr[j];
sr[j]=tmp;
}
}
void xuehao()
{
struct stud tmp;
for(int i=0;i<length-1;i++)
for(j=i+1;j<length;j++)
if(sr[i].a[1]>sr[j].a[1])
{
tmp=sr[i];
sr[i]=sr[j];
sr[j]=tmp;
}
}
void nl()
{
struct stud tmp;
for(int i=0;i<length-1;i++)
for(j=i+1;j<length;j++)
if(sr[i].a[0]<sr[j].a[0])
{
tmp=sr[i];
sr[i]=sr[j];
sr[j]=tmp;
}
}
void ccj()
{
struct stud tmp;
for(int i=0;i<length-1;i++)
for(j=i+1;j<length;j++)
if(sr[i].a[2]<sr[j].a[2])
{
tmp=sr[i];
sr[i]=sr[j];
sr[j]=tmp;
}
}
void scj()
{
struct stud tmp;
for(int i=0;i<length-1;i++)
for(j=i+1;j<length;j++)
if(sr[i].a[3]<sr[j].a[3])
{
tmp=sr[i];
sr[i]=sr[j];
sr[j]=tmp;
}
}
void hcj()
{
struct stud tmp;
for(int i=0;i<length-1;i++)
for(j=i+1;j<length;j++)
if(sr[i].a[4]<sr[j].a[4])
{
tmp=sr[i];
sr[i]=sr[j];
sr[j]=tmp;
}
}
void pjun()
{
struct stud tmp;
for(int i=0;i<length-1;i++)
for(j=i+1;j<length;j++)
if(sr[i].a[6]<sr[j].a[6])
{
tmp=sr[i];
sr[i]=sr[j];
sr[j]=tmp;
}
}
void paishuchu()
{
char c;
printf("歡迎來(lái)到排序模塊\n");
printf("請(qǐng)選擇排序方式:1.按姓名排序,2.按學(xué)號(hào)排序,3.按年齡排序,4.按c成績(jī)排序,5.按s成績(jī)排序,6.按h成績(jī)排序,7.按平均分排序,8,回上級(jí)菜單\n");
scanf("%c",&c);
while(c!='8')
{
c=getchar();
switch(c)
{
case '1':system("cls");
printf("按姓名排序是:\n");
xm();
shuchu();
printf("按任意鍵返回排序模塊\n");
getch();
system("cls");
paishuchu();
break;
case '2': printf("按學(xué)號(hào)排序是:\n");
xuehao();
shuchu();
printf("任意鍵返回排序模塊\n");
getch();
system("cls");
paishuchu();
break;
case '3': printf("按年齡排序是:\n");
nl();
shuchu();
printf("任意鍵返回排序模塊\n");
getch();
system("cls");
paishuchu();
break;
case '4': printf("按c成績(jī)排序是:\n");
ccj();
shuchu();
printf("任意鍵返回排序模塊\n");
getch();
system("cls");
paishuchu();
break;
case '5': printf("按s成績(jī)排序是:\n");
scj();
shuchu();
printf("按任意鍵返回排序模塊\n");
getch();
system("cls");
paishuchu();
break;
case '6': printf("按h成績(jī)排序是:\n");
hcj();
shuchu();
printf("按任意鍵返回排序模塊\n");
getch();
system("cls");
paishuchu();
break;
case '7': printf("按平均分排序是:\n");
pjun();
shuchu();
printf("按任意鍵返回排序模塊\n");
getch();
system("cls");
paishuchu();
break;
case '8': system("cls");
hunyin();
break;
}
}
printf("\n");
}
void chaozhao()
{
int no;
printf("輸入要查找的學(xué)生的學(xué)號(hào):\n");
scanf("%d",&no);
for(int i=0;i<length;i++)
{
if(no==sr[i].a[1])
{
printf("\t\t學(xué)生成績(jī)表\n");
printf("姓名\t性別\t年齡\t學(xué)號(hào)\tC成績(jī)\tH成績(jī)\tS成績(jī)\t總分\t平均分\t\n");
printf("%s\t%s\t%d\t%d\t%d\t%d\t%d\t%d\t%d\n",sr[i].name,sr[i].sex,sr[i].a[0],sr[i].a[1],sr[i].a[2],sr[i].a[3],sr[i].a[4],sr[i].a[5],sr[i].a[6]);
break;
}
if(i==(length-1))
{
printf("錯(cuò)誤,按任意鍵返回\n");
getch();
return;
}
}
}
void xiougai()
{
int no,tp;
char cll;
printf("請(qǐng)輸入你要編輯修改的學(xué)生的學(xué)號(hào):\n");
scanf("%d",&no);
for(int i=0;i<length;i++)
{
if(no==sr[i].a[1])
{
printf("\t\t學(xué)生成績(jī)表\n");
printf("姓名\t性別\t年齡\t學(xué)號(hào)\tC成績(jī)\tH成績(jī)\tS成績(jī)\t總分\t平均分\t\n");
printf("%s\t%s\t%d\t%d\t%d\t%d\t%d\t%d\t%d\n",sr[i].name,sr[i].sex,sr[i].a[0],sr[i].a[1],sr[i].a[2],sr[i].a[3],sr[i].a[4],sr[i].a[5],sr[i].a[6]);
tp=sr[i].a[6];
printf("請(qǐng)選擇你要修改的部分:\n");
printf("1.姓名.2.性別.3.年齡.4.學(xué)號(hào).5.c成績(jī).6.h成績(jī).7.S成績(jī)\n");
getchar();
cll=getchar();
switch(cll)
{
case'1':printf("姓名修改成:");
scanf("%s",sr[i].name);break;
case'2':printf("性別修改成:");
scanf("%s",sr[i].sex);break;
if(strcmp(sr[i].sex,nv)==0)
girl++;
else if(strcmp(sr[i].sex,nan)==0)
boy++;
case'3':printf("年齡修改成:");
scanf("%d",&sr[i].a[0]);break;
case'4':printf("學(xué)號(hào)修改成:");
scanf("%d",&sr[i].a[1]);break;
case'5':printf("C成績(jī)修改成:");
scanf("%d",&sr[i].a[2]);break;
case'6':printf("H成績(jī)修改成:");
scanf("%d",&sr[i].a[3]);break;
case'7':printf("S成績(jī)修改成:");
scanf("%d",&sr[i].a[4]);break;
}
sr[i].a[5]=sr[i].a[2]+sr[i].a[3]+sr[i].a[4];
sr[i].a[6]=(sr[i].a[5])/3;
}
if(i==-1)
{
printf("沒(méi)找著,按任意鍵返回\n");
getch();
return;
}
}
shuchu();
printf("\n修改成功!");
getchar();
}
void shanchu()
{
int no,i;
printf("輸入要?jiǎng)h除學(xué)生的學(xué)號(hào):");
scanf("%d",&no);
for(i=0;i<length;i++)
if(no==sr[i].a[1])
{
printf("刪除:\n");
printf("%s\t%s\t%d\t%d\t%d\t%d\t%d\t%d\t%d\n",sr[i].name,sr[i].sex,sr[i].a[0],sr[i].a[1],sr[i].a[2],sr[i].a[3],sr[i].a[4],sr[i].a[5],sr[i].a[6]);
if(strcmp(sr[i].sex,nv)==0)
girl--;
else if(strcmp(sr[i].sex,nan)==0)
boy--;
for(int j=i;j<length-1;j++)
sr[j]=sr[j+1];
length--;
printf("刪除成功\n");
getch();
break;
}
shuchu();
}
void tongji()
{
for(int i=0;i<length;i++)
if(strcmp(sr[i].sex,nan)==0)
boy++;
printf("本班有%d個(gè)學(xué)生,其中男生%d個(gè),女生%d個(gè)。\n",length,boy,length-boy);
}
void main()
{
hunyin();
while(cl!='8')
{
cl=getchar();
switch(cl)
{
case'1':
system("cls");
shuru();
printf("按任意鍵返回主界面\n");
getch();
system("cls");
hunyin();
break;
case'2':
system("cls");
shuchu();
printf("按任意鍵返回主界面\n");
getch();
system("cls");
hunyin();
break;
case'3':system("cls");
paishuchu();
break;
case'4':
system("cls");
xiougai();
printf("按任意鍵返回主界面\n");
getch();
system("cls");
hunyin();
break;
case'5':
system("cls");
chaozhao();
printf("按任意鍵返回主界面\n");
getch();
system("cls");
hunyin();
break;
case'6':
system("cls");
shanchu();
printf("按任意鍵返回主界面\n");
getch();
system("cls");
hunyin();
break;
case'7':
system("cls");
tongji();
printf("按任意鍵返回主界面\n");
getch();
system("cls");
hunyin();
break;
case'8':
hunyin();
break;
}
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -