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.

145 lines
5.2 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

void xiugai() /*修改模块*/
{
system ("color 5F");
int lgl=1;
int x,i=0,k;
long int xuehao;
char name[10];
struct stu *p;
FILE *tp;
int lgl1=1;
while(lgl1==1)
{
system("cls"); /*清屏*/
printf(" |==========================================|\n");
printf(" | 请选择修改的人 |\n");
printf(" |==========================================|\n");
printf(" | 1.学号 2.姓名 |\n");
printf(" |==========================================|\n");
printf(" | 3.取消 |\n");
printf(" |==========================================|\n");
printf(" 请选择:");
scanf("%d",&x);
switch(x)
{case 1:
printf("请输入要修改的学生学号:");
scanf("%ld",&xuehao);
for(p=s;p<s+N;p++)
{if(p->xuehao==xuehao)
{
i=1;
int j; //菜单选择项//
while(lgl==1)
{
system("cls"); /*清屏*/
printf("\n\n");
printf(" |=======================================|\n");
printf(" | 请选择要修改的项目: |\n");
printf(" |=======================================|\n");
printf(" | 1.性别 2.年龄 |\n");
printf(" |=======================================|\n");
printf(" | 3.出生日期 4.地址 |\n");
printf(" |=======================================|\n");
printf(" | 5.电话号码 6.mail |\n");
printf(" |=======================================|\n");
printf(" | 7.取消 |\n");
printf(" |=======================================|\n");
printf("请选择想要修改的项目1-7");
scanf("%d",&j);
switch(j)
{ case 1: printf("新性别:"); scanf("%s",p->sex); break;
case 2: printf("新年龄:"); scanf("%d",&p->age); break;
case 3: printf("新出生日期:"); scanf("%s",p->birth); break;
case 4: printf("新地址:"); scanf("%s",p->address); break;
case 5: printf("新电话号码:"); scanf("%s",p->phone); break;
case 6: printf("新mail"); scanf("%s",p->mail); break;
case 7: break;
}
printf("修改后数据如下:\n");
printf("% 6ld% 8s% 6s% 6d% 10s% 10s% 15s% 20s\n",p->xuehao,p->name,p->sex,p->age,p->birth,p->address,p->phone,p->mail);
tp=fopen("xsxxk.txt","w");
for(k=0;k<N;k++)
fprintf(tp,"%ld\n%s\n%s\n%d\n%s\n%s\n%s\n%s\n",s[k].xuehao,s[k].name,s[k].sex,s[k].age,s[k].birth,s[k].address,s[k].phone,s[k].mail);
fclose(tp);
printf("修改已成功!是否继续修改此项目的其他数据:(Y/N)");
char a; scanf("%s",&a);
if(a=='y'||a=='Y') lgl=1;
if(a=='n'||a=='N') lgl=0;
}
printf("是否返回修改其他数据:(Y/N)");
char b;
scanf("%s",&b);
if(b=='y'||b=='Y') lgl1=1;lgl=1;
if(b=='n'||b=='N') lgl1=0;
}}
if(i==0)
{
printf("\n\n对不起!您查询的数据不存在!\n是否返回菜单继续选择修改:(Y/N)");
char c;
scanf("%s",&c);
if(c=='y'||c=='Y') lgl1=1;
if(c=='n'||c=='N') lgl1=0;}
break;
case 2:
printf("请输入要修改的学生姓名:");
scanf("%s",name);
for(p=s;p<s+N;p++)
{
if(strcmp(p->name,name)==0)
{i=1;
int j; //菜单选择项
while(lgl==1)
{system("cls"); /*清屏*/
printf("\n\n");
printf(" |============================|\n");
printf(" |============================|\n");
printf(" | 请选择要修改的项目: |\n");
printf(" |============================|\n");
printf(" | 1.性别 2.年龄 |\n");
printf(" |============================|\n");
printf(" | 3.出生日期 4.地址 |\n");
printf(" |============================|\n");
printf(" | 5.电话号码 6.mail |\n");
printf(" |============================|\n");
printf(" | 7.取消 |\n");
printf(" |============================\n");
printf(" |===========================|\n");
printf("请选择想要修改的项目1-7");
scanf("%d",&j);
switch(j)
{ case 1: printf("新性别:"); scanf("%s",p->sex); break;
case 2: printf("新年龄:"); scanf("%d",&p->age); break;
case 3: printf("新出生日期:"); scanf("%s",p->birth); break;
case 4: printf("新地址:"); scanf("%s",p->address); break;
case 5: printf("新电话号码:"); scanf("%s",p->phone); break;
case 6: printf("新mail"); scanf("%s",p->mail); break;
case 7: break;
}
printf("修改后如下:\n");
printf("% 6ld% 8s% 6s% 6d% 10s% 10s% 15s% 20s\n",p->xuehao,p->name,p->sex,p->age,p->birth,p->address,p->phone,p->mail);
tp=fopen("xsxxk.txt","w");
for(k=0;k<N;k++)
fprintf(tp,"%ld\n%s\n%s\n%d\n%s\n%s\n%s\n%s\n",s[k].xuehao,s[k].name,s[k].sex,s[k].age,s[k].birth,s[k].address,s[k].phone,s[k].mail);
fclose(tp);
printf("修改已成功!是否继续修改此项目的其他数据:(Y/N)");
char d; scanf("%s",&d);
if(d=='y'||d=='Y') lgl=1;
if(d=='n'||d=='N') lgl=0;}
printf("是否返回修改其他数据:(Y/N)");
char e; scanf("%s",&e);
if(e=='y'||e=='Y') lgl1=1; lgl=1;
if(e=='n'||e=='N') lgl1=0;
}}
if(i==0)
{printf("\n\t对不起!您查询的数据不存在!\n是否返回菜单继续选择修改:(Y/N)");
char m; scanf("%s",&m);
if(m=='y'||m=='Y') lgl1=1;
if(m=='n'||m=='N') lgl1=0;}
break;
case 3:
system("cls");
lgl1=0; break;
}}
}