📄 myfinalwork.txt
字号:
#include <string.h>
#include <stdio.h>
#include <stdlib.h> /*其它说明*/
#include <ctype.h> /*字符操作函数*/
#include <conio.h>
int ban=1;/*录入的班级数目*/
typedef struct stu
{
char name[10];/*课程名*/
char place[10];/*地点*/
char teacher[10];/*教师名*/
}kb; /*每个课的类型结构定义*/
kb KEBIAO[10][6][5];
char classes[10][20]={"电信0602班"};
void print2_KEBIAO()
{
int i,j,n,z,q,p,k;
char a[20];
z=0;/*作为班级不匹配的标志*/
q=0;
printf("你想要显示哪个班的课程表?");
scanf("%s",a);
for(n=0;n<ban;n++)
{
if(strcmp(a,classes[n])==0) {z=1;k=n;break;}
}
if(z==1)
{
printf("%s\n",a);
for(j=0;j<5;j++)
for(i=0;i<6;i++)
{
if(KEBIAO[k][i][j].name[0]!='\0')
{
printf("星期%d",j);
printf("第%d大节",i);
printf("\t\t%s",KEBIAO[k][i][j].teacher);
printf("\t\t%s",KEBIAO[k][i][j].name);
printf("\t\t%s",KEBIAO[k][i][j].place);
}
else
continue;
}
}
else
{
printf("你所输入的班级不存在\n");
do
{
printf("\n您想继续查询吗?1为继续,2为返回");
scanf("%d",&q);
p=0;
if(q==1) print2_KEBIAO();
else if(q==2) break;
else
{
p=1;
printf("\n错误输入,请重新输入!");
}
}while(p==1);
}
}
void add_KEBIAO()
{ int k,w,n,z,l,g,h;
int q,p,x;
char cc[15],a[15];
printf("请问您是想按星期一从一二三四这样的顺序添加(即新增一个班级选择1)还是单独一节一节添加(选择2)?");
scanf("%d",&x);
if(x==1)
{
printf("请输入您想添加课表的班级");
scanf("%s",classes[ban++]);
for(k=0;k<5;k++)
for(w=0;w<6;w++)
{
printf("请输入课程名\n");
scanf("%s",cc);
strcpy(KEBIAO[ban-1][w-1][k-1].name,cc);
printf("请输入上课地点\n");
scanf("%s",cc);
strcpy(KEBIAO[ban-1][w-1][k-1].place,cc);
printf("请输入教师\n");
scanf("%s",cc);
strcpy(KEBIAO[ban-1][w-1][k-1].teacher,cc);
}
}
else if(x==2)
{
printf("请输入您想添加哪个班的课表");
scanf("%s",a);
for(n=0;n<ban;n++)
{
if(strcmp(a,classes[n])==0) {z=1;l=n;break;}
}
if(z==1)
{
printf("你要添加星期几的第几节课(格式如:星期一的第1大节:1,1)");
scanf("%d,%d",&k,&w);
if(KEBIAO[l][w][k].name[0]!='\0')
{
printf("该时间段已有安排了.");
do
{
printf("\n您想继续添加吗?1为继续,2为返回");
scanf("%d",&q);
p=0;/*防止意外p的随即值与自己规定的值匹配*/
if(q==1) add_KEBIAO();
else if(q==2) return;
else
{
p=1;
printf("错误输入,请重新输入!");
}
}while(p==1);
}
else
{
printf("请输入课程名\n");
scanf("%s",cc);
strcpy(KEBIAO[l][w-1][k-1].name,cc);
printf("请输入上课地点\n");
scanf("%s",cc);
strcpy(KEBIAO[l][w-1][k-1].place,cc);
printf("请输入教师\n");
scanf("%s",cc);
strcpy(KEBIAO[l][w-1][k-1].teacher,cc);
}
}
}
else
{
printf("您输入错误!");
do
{
printf("\n您想继续查询吗?1为继续,2为返回");
scanf("%d",&g);
h=0;
if(g==1) add_KEBIAO();
else if(g==2) return;
else
{
h=1;
printf("\n错误输入,请重新输入!");
}
}while(h==1);
}
}
void alter_KEBIAO()
{
int k,w,q,p,g,h,l,i,z;
char a[10];
printf("你想要修改哪个班的课程表?");
scanf("%s",a);
for(i=0;i<ban;i++)
{
if(strcmp(a,classes[i])==0) {z=1;l=i;}
}
if(z==1)
{
printf("你要修改星期几的第几节课(格式如:星期一的第1,2节课:1,2)");
scanf("%d,%d",&k,&w);
if(KEBIAO[l][w-1][k-1].name[0]=='\0')
{
printf("该时间段未有安排。");
do
{
printf("\n您想继续修改吗?1为继续,2为返回");
scanf("%d",&q);
if(q==1) alter_KEBIAO();
else if(q==2) return;
else
{
p=1;
printf("错误输入,请重新输入!");
}
}while(p==1);
}
else
{
printf("请输入课程名");
scanf("%s",KEBIAO[l][w-1][k-1].name);
printf("请输入上课地点");
scanf("%s",KEBIAO[l][w-1][k-1].place);
printf("请输入教师");
scanf("%s",KEBIAO[l][w-1][k-1].teacher);
}
}
else
{
printf("您所要修改的班级不存在");
do
{
printf("\n您想继续查询吗?1为继续,2为返回");
scanf("%d",&g);
if(g==1) alter_KEBIAO();
else if(g==2) return;
else
{
h=1;
printf("\n错误输入,请重新输入!");
}
}while(h==1);
}
}
void delete_KEBIAO()
{
int k,w,q,p,g,h,i,z,l;
p=0;
char a[10];
printf("你想要删除哪个班的课程表?");
scanf("%s",a);
for(i=0;i<ban;i++)
{
if(strcmp(a,classes[i])==0) {z=1;l=i;}
}
if(z==1)
{
printf("你要删除星期几的第几节课(格式如:星期一的第1,2节课:1,2)");
scanf("%d,%d",&k,&w);
if(KEBIAO[l][w-1][k-1].name[0]=='\0')
{
printf("该时间段未有安排。");
do
{
printf("\n您想继续删除吗?1为继续,2为返回");
scanf("%d",&q);
if(q==1) alter_KEBIAO();
else if(q==2) return;
else
{
p=1;
printf("错误输入,请重新输入!");
}
}while(p==1);
}
else
{
KEBIAO[l][w-1][k-1].name[0]='\0';
}
}
else
{
printf("您所要修改的班级不存在");
do
{
printf("\n您想继续查询吗?1为继续,2为返回");
scanf("%d",&g);
if(g==1) delete_KEBIAO();
else if(g==2) return;
else
{
h=1;
printf("\n错误输入,请重新输入!");
}
}while(h==1);
}
}
void main()
{
add_KEBIAO();
delete_KEBIAO();
print2_KEBIAO();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -