新编的C语言学生信息管理系统程序,一些地方出现了乱码,求助,帮忙修改修改,谢谢!!!
#include "stdio.h"#include "stdlib.h"
#include "string.h"
#include "conio.h"
table();
struct student /*定义结构体*/
{char num[50];/*学号*/
char name[50];/*姓名*/
char sex[5];/*性别*/
int age[5];/*年龄*/
int ph[50];/*联系电话*/
char addr[50];/*家庭住址*/
}stu[50],del;
void function1() /*添加学生信息*/
{
int i=0;
char num1;
for(i=0;i<100;i++)
{
printf("请输入要添加的学生资料:\n");
printf("学号:");
scanf("%s",stu[i].num);
printf("姓名:");
scanf("%s",stu[i].name);
printf("性别:");
scanf("%s",stu[i].sex);
printf("年龄:");
scanf("%d",stu[i].age);
printf("联系电话:");
scanf("%ld",stu[i].ph);
printf("家庭住址:");
scanf("%s",stu[i].addr);
printf("是否继续添加:y/n\n");
scanf("%c",&num1);
scanf("%c",&num1);
system("cls");
if(num1=='N' || num1=='n')
{
system("cls");
table();
}
}
}
void function2() /*查找学生信息*/
{
int i;
char num[50];
printf("请输入要查找的学生学号:\n");
scanf("%s",num);
for(i=0;i<50;i++)
if(strcmp(stu[i].num,num)==0)
{
printf("%s\t%s\t%s\t%d\t%ld\t%s:\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].age,stu[i].ph,stu[i].addr);
break;
}
if(i==50)
printf("查找不到!请重新输入!\n");
getch();
system("cls");
table();
}
void function3() /*修改学生信息*/
{
char num1,i=0;
printf("请输入要修改的学生学号:\n");
scanf("%s",stu[i].num);
printf("%s\t%s\t%s\t%d\t%d\t%s:\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].age,stu[i].ph,stu[i].addr);
printf("姓名:");
scanf("%s",stu[i].name);
printf("性别:");
scanf("%s",stu[i].sex);
printf("年龄:");
scanf("%d",&stu[i].age);
printf("联系电话:");
scanf("%d",stu[i].ph);
printf("家庭住址:");
scanf("%s",stu[i].addr);
printf("是否继续修改:y/n?\n");
scanf("%c",&num1);
scanf("%c",&num1);
if(num1=='N' || num1=='n')
system("cls");
table();
}
void function4() /*删除学生信息*/
{
int i;
char num[50];
printf("请输入要删除的学生学号:\n");
scanf("%s",num);
for(i=0;i<50;i++)
if(strcmp(num,stu[i].num)==0)
{
printf("%s\t%s\t%s\t%d\t%d\t%s:\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].age,stu[i].ph,stu[i].addr);
stu[i]=del;
printf("信息已删除,按任意键返回..\n");
break;
}
if(i==50)
printf("您输入的信息不存在!\n");
getch();
system("cls");
table();
}
void function5() /*显示学生信息*/
{
int i=0;
printf("学号 \t姓名 \t性别 \t年龄\t联系电话\t家庭住址\n");
for(i=0;i<50;i++)
{
if(stu[i].age==0)
break;
printf("%s\t%s\t%s\t%d\t%d\t%s:\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].age,stu[i].ph,stu[i].addr);
}
printf("按任意键返回...");
getch();
system("cls");
table();
}
void function6() /*保存学生信息*/
{
FILE *fp;
int i;
char filename[50];
printf("\n");
printf("\n");
printf("请输入要保存的文件名:");
scanf("%s",filename);
if((fp=fopen("d:\\filename.txt","wt"))==NULL)
printf("文件名为空,不能保存!\n");
for(i=0;i<50;i++)
{
if(fwrite(&stu[i],sizeof(struct student),1,fp)!=1)
printf("文件保存失败!\n");
}
fclose(fp);
printf("文件已保存!\n");
printf("按任意键返回...\n");
getch();
system("cls");
table();
}
void function7() /*载入学生信息*/
{
FILE *fp;
int i=0; /*打开*/
char filename[50];
printf("请输入文件名:");
scanf("%s",filename); /*输入要载入的文件名*/
if((fp=fopen("d:\\filename.txt","rt"))==0) /*输出文件不存在,退出系统。*/
{
printf("文件不存在!按任意键返回\n");
getch();
system("cls");
table();
}
while(fread(&stu[i],sizeof(struct student),1,fp)!=0)/*若存在,读取系统*/
{
i++;
}
fclose(fp); /*程序结束后*/
printf("信息已载入!\n");
printf("按回车键返回 ");
getchar();
getchar();
system("cls");
table();
}
void function8() /*退出系统*/
{
printf("\t\t感谢使用!按任意键退出...");
exit(0);
}
void choose() /*选择模块函数*/
{
int num;
scanf("%d",&num);
switch(num)
{
case 1:system("cls");function1();break;
case 2:system("cls");function2();break;
case 3:system("cls");function3();break;
case 4:system("cls");function4();break;
case 5:system("cls");function5();break;
case 6:system("cls");function6();break;
case 7:system("cls");function7();break;
case 8:system("cls");function8();break;
default:printf(" ");break;
}
}
table() /*桌面*/
{
printf("\t-------------------欢迎使用学生档案管理系统----------------\n");
printf("\t\t\t\t\t\n");
printf("\t\t①添加学生信息 ");
printf("\t\t②查找学生信息 \t\n");
printf("\t\t\t\t\t\n");
printf("\t\t\t\t\t\n");
printf("\t\t③修改学生信息 ");
printf("\t\t④删除学生信息 \t\n");
printf("\t\t\t\t\t\n");
printf("\t\t\t\t\t\n");
printf("\t\t⑤显示学生信息 ");
printf("\t\t⑥保存学生信息 \t\n");
printf("\t\t\t\t\t\n");
printf("\t\t\t\t\t\n");
printf("\t\t⑦载入学生信息 ");
printf("\t\t⑧退出系统 ");
printf("\t\t 请选择①-⑧操作\t\n");
printf("\t\t\t\t\t\n");
printf("\t\n");
choose();
}
key()
{int n,i;
for(i=0;i<3;i++)
{printf("\n\n\n\n\n\t\t\t\t\n\t\t\t\t 请输入密码:\n\t\t\t\t");
scanf("%d",&n);
if(n==11111){system("cls");
table();}
else {printf("\n\t\t\t\t 密码错误");
getchar();
getchar();
system("cls");
}
}
if(i=3) printf("\t\t密码三次错误 退出系统");
}
void main()
{
key();
}