You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
acttive/学生选修课程系统设计.cpp

268 lines
7.1 KiB

6 years ago
#include<stdio.h>
#include<stdlib.h>
#include <string.h>
struct course//<2F>ȶ<EFBFBD><C8B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9>^_^,һ<><D2BB><EFBFBD>ǿγ<C7BF><CEB3><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ѧ<EFBFBD><D1A7>ѡ<EFBFBD>εĽṹͼ<E1B9B9><CDBC>
{
int num;//<2F>γ̱<CEB3><CCB1><EFBFBD>
char name[20];//<2F>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD>
char kind[10];//<2F>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD>
int time;//<2F><>ѧʱ
int ttime;//<2F>ڿ<EFBFBD>ѧʱ
int etime;//ʵ<><CAB5><EFBFBD>ϼ<EFBFBD>ѧʱ
int mark;//ѧ<><D1A7>
int term;//ѧ<><D1A7>
};
struct student
{
int snum;//ѧ<><D1A7>
int cnum;//<2F>γ̱<CEB3><CCB1><EFBFBD>
char cname[20];//<2F>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD>
};
void insert()//<2F>γ<EFBFBD><CEB3><EFBFBD>Ϣ¼<CFA2><C2BC>
{
int mai_n();
FILE *fp;
struct course c;
int count;
int i;
if((fp=fopen("course.txt","a+"))==NULL)
{
printf("cannot open file\n");
}
printf("\n <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD>:\n");
scanf("%d",&count);
printf("<EFBFBD>γ̱<EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD>޿<EFBFBD>) <20><>ѧʱ <20>ڿ<EFBFBD>ѧʱ ʵ<><CAB5><EFBFBD><EFBFBD><EFBFBD>ϻ<EFBFBD>ѧʱ ѧ<><D1A7> <20><><EFBFBD><EFBFBD>ѧ<EFBFBD><D1A7>(<28><><EFBFBD><EFBFBD>):\n");
for(i=0;i<count;i++)
{
scanf("%d %s %s %d %d %d %d %d",&c.num,&c.name,&c.kind,&c.time,&c.ttime,&c.etime,&c.mark,&c.term);
fprintf(fp,"%d %s %s %d %d %d %d %d\n",c.num,c.name,c.kind,c.time,c.ttime,c.etime,c.mark,c.term);
}
fclose(fp);
printf("<EFBFBD>ѱ<EFBFBD><EFBFBD>");
system("pause");
system("cls");//<2F><><EFBFBD><EFBFBD>
mai_n();
}
void browser()//<2F>γ<EFBFBD><CEB3><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
{
int mai_n();
FILE *fp;
struct course c;
int a;
if((fp=fopen("course.txt","r"))==NULL)
{
printf("\nCannot open course!\n");
}
printf("<EFBFBD>γ̱<EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD> <20><>ѧʱ <20>ڿ<EFBFBD>ѧʱ ʵ<><CAB5><EFBFBD><EFBFBD><EFBFBD>ϻ<EFBFBD>ѧʱ ѧ<>ֿ<EFBFBD><D6BF><EFBFBD>ѧ<EFBFBD><D1A7>:\n");
for(;!feof(fp);)
{
fscanf(fp,"%d %s %s %d %d %d %d %d\n",&c.num,&c.name,&c.kind,&c.time,&c.ttime,&c.etime,&c.mark,&c.term);
printf("%5d%12s%9s%9d%9d%11d%11d%11d\n",c.num,c.name,c.kind,c.time,c.ttime,c.etime,c.mark,c.term);
}
fclose(fp);
printf("\n1-<2D><><EFBFBD>ز˵<D8B2><CBB5><EFBFBD>2-<2D>˳<EFBFBD>ϵͳ\n");
scanf("%d",&a);system("cls");//<2F><><EFBFBD><EFBFBD>
if(a==1)
mai_n();
else
exit(0);
}
void search()//<2F>γ<EFBFBD><CEB3><EFBFBD>Ϣ<EFBFBD><CFA2>ѯ
{
int mai_n();
FILE *fp;
struct course c;
int xuefen,time;
char kind[10];
int a,b;
printf("1.<2E><>ѧ<EFBFBD>ֲ<EFBFBD>ѯ./ /2.<2E><><EFBFBD>γ<EFBFBD><CEB3><EFBFBD><EFBFBD>ʲ<EFBFBD>ѯ./ /3.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѧ<EFBFBD>ڲ<EFBFBD>ѯ\n");
printf("<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֣<EFBFBD> ");
scanf("%d",&b);
if(b==1)
{
printf("\n <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>ѯ<EFBFBD><D1AF>ѧ<EFBFBD><D1A7>:\n");
scanf("%d",&xuefen);
if((fp=fopen("course.txt","r"))==NULL)
{
printf("\nCannot open course!\n");
}
printf("<EFBFBD>γ̱<EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD> <20><>ѧʱ <20>ڿ<EFBFBD>ѧʱ ʵ<><CAB5><EFBFBD><EFBFBD><EFBFBD>ϻ<EFBFBD>ѧʱ ѧ<><D1A7> <20><><EFBFBD><EFBFBD>ѧ<EFBFBD><D1A7>:\n");
for(;!feof(fp);)//<2F>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>βǰ<CEB2><C7B0><EFBFBD><EFBFBD>
{fscanf(fp,"%d%s%s%d%d%d%d%d\n",&c.num,&c.name,&c.kind,&c.time,&c.ttime,&c.etime,&c.mark,&c.term);
if(c.mark==xuefen)
printf("%5d%12s%9s%9d%9d%11d%11d%11d\n",c.num,c.name,c.kind,c.time,c.ttime,c.etime,c.mark,c.term);
}
}
else if(b==2){
printf("\n <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>ѯ<EFBFBD>Ŀγ<C4BF><CEB3><EFBFBD><EFBFBD><EFBFBD>:\n");
scanf("%s",&kind);
if((fp=fopen("course.txt","r"))==NULL)
{
printf("\nCannot open course!\n");
}
printf("<EFBFBD>γ̱<EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD> <20><>ѧʱ <20>ڿ<EFBFBD>ѧʱ ʵ<><CAB5><EFBFBD><EFBFBD><EFBFBD>ϻ<EFBFBD>ѧʱ ѧ<><D1A7> <20><><EFBFBD><EFBFBD>ѧ<EFBFBD><D1A7>:\n");
for(;!feof(fp);)
{
fscanf(fp,"%d%s%s%d%d%d%d%d\n",&c.num,&c.name,&c.kind,&c.time,&c.ttime,&c.etime,&c.mark,&c.term);
if(strcmp(c.kind,kind)==0)
printf("%5d%12s%9s%9d%9d%11d%11d%11d\n",c.num,c.name,c.kind,c.time,c.ttime,c.etime,c.mark,c.term);
}
}
else if(b==3){
printf("\n <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>ѯ<EFBFBD>Ŀγ̿<CEB3><CCBF><EFBFBD>ѧ<EFBFBD>ڣ<EFBFBD>\n");
scanf("%d",&time);
if((fp=fopen("course.txt","r"))==NULL)
{
printf("\nCannot open course!\n");
}
printf("<EFBFBD>γ̱<EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD> <20><>ѧʱ <20>ڿ<EFBFBD>ѧʱ ʵ<><CAB5><EFBFBD><EFBFBD><EFBFBD>ϻ<EFBFBD>ѧʱ ѧ<><D1A7> <20><><EFBFBD><EFBFBD>ѧ<EFBFBD><D1A7>:\n");
for(;!feof(fp);)
{fscanf(fp,"%d%s%s%d%d%d%d%d\n",&c.num,&c.name,&c.kind,&c.time,&c.ttime,&c.etime,&c.mark,&c.term);
if(c.term==time)
printf("%5d%12s%9s%9d%9d%11d%11d%11d\n",c.num,c.name,c.kind,c.time,c.ttime,c.etime,c.mark,c.term);
}
}
else{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
exit(1);
}
fclose(fp);
printf("\n1-<2D><><EFBFBD>ز˵<D8B2><CBB5><EFBFBD>2-<2D>˳<EFBFBD>ϵͳ\n");
scanf("%d",&a);system("cls");//<2F><><EFBFBD><EFBFBD>
if(a==1)
mai_n();
else
exit(0);
}
void xuanke_information()//ͳ<><CDB3>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
int mai_n();
int total=0;
int a;
FILE *fp;
struct student s;
if((fp=fopen("student.txt","r"))==NULL)//<2F>ļ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>
{
printf("\nCannot open student!\n");
}
printf(" ѧ<><D1A7> <20>γ̱<CEB3><CCB1><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD>\n");
for(;!feof(fp);)
{fscanf(fp,"%d%d%s\n",&s.snum,&s.cnum,&s.cname);
total++;
printf("%7d%9d%13s\n",s.snum,s.cnum,s.cname);
}
printf("\n ѡ<><D1A1>ѧ<EFBFBD><D1A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>%d <20><>",total);
fclose(fp);
printf("\n1-<2D><><EFBFBD>ز˵<D8B2><CBB5><EFBFBD>2-<2D>˳<EFBFBD>ϵͳ\n");
scanf("%d",&a);system("cls");//<2F><><EFBFBD><EFBFBD>
if(a==1)
mai_n();
else
exit(0);
}
void xuan_ke()//ѧ<><D1A7>ѡ<EFBFBD>޿γ<DEBF>
{
int mai_n();
struct student s;
struct course c;
int a;
FILE *fp;
if((fp=fopen("course.txt","r"))==NULL)//<2F>ļ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>
{
printf("\nCannot open course!\n");
}
printf("<EFBFBD>γ̱<EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD> <20>γ<EFBFBD><CEB3><EFBFBD><EFBFBD><EFBFBD> <20><>ѧʱ <20>ڿ<EFBFBD>ѧʱ ʵ<><CAB5><EFBFBD><EFBFBD><EFBFBD>ϻ<EFBFBD>ѧʱ ѧ<>ֿ<EFBFBD><D6BF><EFBFBD>ѧ<EFBFBD><D1A7>:\n");
for(;!feof(fp);)
{
fscanf(fp,"%d %s %s %d %d %d %d %d\n",&c.num,&c.name,&c.kind,&c.time,&c.ttime,&c.etime,&c.mark,&c.term);
printf("%5d%12s%9s%9d%9d%11d%11d%11d\n",c.num,c.name,c.kind,c.time,c.ttime,c.etime,c.mark,c.term);
}
fclose(fp);
printf("*@********#*******************************&****^**^*****&********************************#*****@**\n");
printf("\n <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѧ<EFBFBD><D1A7> <20><> <20><>Ҫѡ<D2AA><D1A1><EFBFBD>Ŀγ̱<CEB3><CCB1><EFBFBD>:\n");
scanf("%d%d",&s.snum,&s.cnum);
if((fp=fopen("course.txt","r"))==NULL)
{
printf("\nCannot open course!\n");
}
for(;!feof(fp);)
{
fscanf(fp,"%d %s %s %d %d %d %d %d\n",&c.num,&c.name,&c.kind,&c.time,&c.ttime,&c.etime,&c.mark,&c.term);
if(s.cnum==c.num)
break;
}
fclose(fp);
if((fp=fopen("student.txt","a+"))==NULL)
{
printf("\nCannot open student!\n");
}
fprintf(fp,"%d %d %s\n",s.snum,s.cnum,c.name);
fclose(fp);
printf("\n1-<2D><><EFBFBD>ز˵<D8B2><CBB5><EFBFBD>2-<2D>˳<EFBFBD>ϵͳ\n");
scanf("%d",&a);system("cls");//<2F><><EFBFBD><EFBFBD>
if(a==1)
mai_n();
else
exit(0);
}
void mai_n()//<2F><><EFBFBD>˵<EFBFBD>
{
int n,w=0;
printf(" ********************************************************************************\n");
printf(" ** MENU **\n");
printf(" ********************************************************************************\n");
printf(" ** * @$ 1- <20><> <20><> <20><> <20><> <20><> Ϣ^_^ * **\n");
printf(" ** * @$ 2- <20><> <20><> <20><> <20><> <20><> Ϣ^_^ * **\n");
printf(" ** * @$ 3- <20><> ѯ <20><> <20><> <20><> Ϣ^_^ * **\n");
printf(" ** * @$ 4- ͳ <20><> ѡ <20><> <20><> <20><>^_^ * **\n");
printf(" ** * @$ 5- <20><> <20><> ѡ <20><> <20><> <20><>^_^ * **\n");
printf(" ** * @$ 0- <20><> <20><> ѡ <20><> ϵ ͳ^_^ * **\n");
printf(" ********************************************************************************\n");
printf(" <20><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>1-5<><35>:");
scanf("%d",&n);
do
{
if(n>5||n<0)
{
printf("\n <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n");
scanf("%d",&n);
}
else w=1;
}while(w==0);
switch(n)
{
case 1:insert();break;
case 2:browser();break;
case 3:search();break;
case 4:xuanke_information();break;
case 5:xuan_ke();break;
case 0:
printf("\n^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^\n\n <20><>л<EFBFBD><D0BB><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>~~~~~ͨ<>Ź<EFBFBD><C5B9><EFBFBD>1803--<2D><><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD>ʯ𩻪&&<26><>Խ<EFBFBD><D4BD>"),system("pause"),exit(0);
}
}
int main(void)//<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>
{
int a,b,c=123,d=123;
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD>˺<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼ϵͳ(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD>˺š<CBBA><C5A1><EFBFBD><EFBFBD><EFBFBD>Ϊ123)<29><>\n"); //<2F><>Ȼûɶ<C3BB><C9B6>
printf("<EFBFBD>˺ţ<EFBFBD>");
scanf("%d",&a);
printf("\n");
printf("<EFBFBD><EFBFBD><EFBFBD>");
scanf("%d",&b);
printf("\n");
while(a!=c)
{
printf("<EFBFBD>˺Ŵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n<EFBFBD>˺ţ<EFBFBD>");
scanf("%d",&a);
}
while(b!=d)
{
printf("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n<EFBFBD><EFBFBD><EFBFBD>");
scanf("%d",&b) ;
}
printf("<EFBFBD><EFBFBD>¼<EFBFBD>ɹ<EFBFBD>^_^\n");
system("cls");//<2F><><EFBFBD><EFBFBD>
mai_n();//<2F><><EFBFBD>˵<EFBFBD>
return 0;
}