您的位置:首页 > 编程语言 > C语言/C++

C语言编程问题

2010-03-24 16:28 148 查看
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
void fun1();
void fun2();
void fun3();
void fun4();
void fun5();
void fun6();
struct student
{
int num;
char name[20];
char sex[20];
char major[20];
int shengri;
char addr[20];
}stu[60];
int main(int argc, char* argv[])
{
system("color 1e");
printf("/t/t┏┳━━━━━━━━━━━━┳┓/n");
printf("/t/t┣╋━━━━━━━━━━━━╋┫/n");
printf("/t/t┃┃ 欢迎进入学生管理系统 ┃┃/n");
printf("/t/t┣╋━━━━━━━━━━━━╋┫/n");
printf("/t/t┗┻━━━━━━━━━━━━┻┛/n");
printf("/t/t1.增加学生信息/n");
printf("/t/t2.查找特定学生信息/n");
printf("/t/t3.查看所有学生信息/n");
printf("/t/t4.删除学生信息/n");
printf("/t/t5.修改学生信息/n");
printf("/t/t6.欢迎再次光临/n");
char c;
do{
printf("==================================================/n");
printf("请选择你要的选项1-6:/t");
c=getchar();getchar();
switch (c)
{
case '1': fun1();getchar();break;
case '2': fun2();getchar();break;
case '3': fun3();getchar();break;
case '4': fun4();getchar();break;
case '5': fun5();getchar();break;
case '6': fun6();getchar();break;
default : printf ("error/n");
}
}
while(c!=EOF);
return 0;
}
/********************************************************************************/
void fun1()
{
struct student
{
int num;
char name[20];
char sex[20];
char major[20];
int shengri;
char addr[20];
}stud;
char numstr[81],ch;
FILE *fp;
if ((fp=fopen("e://13.txt","a"))==NULL)
{
printf("cannot open file 13.txt");
exit(1);
}
do
{
printf(" 请输入学号:");gets (numstr);stud.num=atoi(numstr);
printf("/n 请输入姓名:");gets (stud.name);
printf("/n 请输入性别:");gets (stud.sex);
printf("/n 请输入出生日期:");gets (numstr); stud.shengri=atoi(numstr);
printf("/n 请输入专业:");gets (stud.major);
printf("/n 请输入地址:");gets (stud.addr);
fprintf(fp,"%-15d %-10s %-10s %-15d %-10s %-10s/n",stud.num,stud.name,stud.sex,stud.shengri,stud.major,stud.addr
);
printf("要进行下一个学生资料记录吗(y/n)?");
ch=getchar();getchar();
}while (ch=='y');
fclose(fp);
printf(" 请按Enter键返回主菜单 ");
}

/********************************************/
void fun2()
{
FILE *fp;
int number;/*/*/
int i=0;
if((fp=fopen("e://13.txt","r"))==NULL)
{
printf("文件打开失败!");
exit(1);
}
printf("请输入你所要查找的学生学号:/t");
scanf("%d",&number);
for(i=0;i<60;i++)
{
fscanf(fp,"%d%s%s%d%s",&stu[i].num,stu[i].name
,stu[i].sex,stu[i].shengri,stu[i].major,stu[i].addr);
if(number==stu[i].num)
{
printf("%-15d%-10s%-10s%-15d%-10s-10s/n",stu[i].num,stu[i].name,
stu[i].sex,stu[i].shengri,stu[i].major,stu[i].addr);
}
else
{
printf(" 未能找到该学生信息! /n");
}break;
}
fclose(fp);
getchar();
printf(" 请按Enter键返回主菜单 ");
}
/****************************************************/
void fun3()
{
FILE *fp;
char ch;
if ((fp=fopen("e://13.txt","r"))==NULL)
{
printf("文件无法打开 /n");
}
while ((ch=fgetc(fp))!=EOF)
putchar(ch);
fclose(fp);
printf(" 请按Enter键返回主菜单 ");
}
/****************************************************************/
void fun4()
{
FILE *fp;
int number;
int i=0;
int j,k;
if((fp=fopen("e://13.txt","r"))==NULL)
{
printf("文件打开失败!");
exit(1);
}

do{
fscanf(fp,"%d%s%s%d%s%s",&stu[i].num,stu[i].name,
stu[i].sex,stu[i].shengri,stu[i].major);
i++;
}while(fgetc(fp)!=EOF);
fclose(fp);
printf("请输入要删除信息的学生学号:/t");
scanf("%d",&number);
for(j=0;j<i;j++)
{
if(number==stu[j].num)
{
for(k=j;k<i-1;k++)

stu[k]=stu[k+1];
i--;
}
}
if((fp=fopen("e://13.txt","w"))==NULL)
{
printf("该文件无法打开!");
exit(1);
}
for(j=0;j<i;j++)
{
fprintf(fp,"%-15d %-10s %-15d %-10s %-10s %-10s/n",stu[j].num,stu[j].name,stu[j].sex,stu[j].shengri,stu[j].major,stu[j].addr);
}
printf(" 该生信息已成功删除!/n");
fclose(fp);
getchar();
printf(" 请按Enter键返回主菜单/n ");
}
/***********************************************************/
void fun5()
{
typedef struct
{
long num;
char name[20];
char sex[20];
char major[20];
int shengri;
char addr[20];
} xy;
FILE *fp;
int number;
int i=0;
int k;
char b[20];
xy stu[60]={0};
if((fp=fopen("e://13.txt","r"))==NULL)
{
printf("文件打开失败!");
exit(1);
}
do
{
fscanf(fp,"%ld %s %1d %s %s %s",&stu[i].num,stu[i].name,stu[i].sex,stu[i].shengri,stu[i].major,stu[i].addr);
i++;
}while(fgetc(fp)!=EOF);
fclose(fp);
k=i;
i=0;
printf("请输入要修改信息的学生学号:");
scanf("%d",&number);
printf("/n");
while(stu[i].num!=number)
i++;
if(stu[i].num==number)
{
printf("请输入修改后的学生学号:");
scanf("%d",&stu[i].num);
printf("请输入修改后的学生姓名:");
scanf("%s",b);strcpy(stu[i].name,b);
printf("请输入修改后的学生性别:");
scanf("%s",b);strcpy(stu[i].sex,b);
printf("请输入修改后的学生生日:");
scanf("%d",&stu[i].shengri);
printf("请输入修改后的学生专业:");
scanf("%s",b);strcpy(stu[i].major,b);
printf("请输入修改后的学生地址: ");
scanf("%s",b);strcpy(stu[i].addr,b);
}
if(stu[i].num==0)
printf("不存在");
if((fp=fopen("e://13.txt","w"))==NULL)
{
printf("文件无法打开!");
exit(1);
}
i=0;
while(stu[i].num!=0)
{
fprintf(fp,"%-15d %-10s %-15d %-10s %-10s %-10s/n",stu[i].num,stu[i].name,stu[i].sex,stu[i].shengri,stu[i].major,stu[i].addr);
i++;
}
fclose(fp);
printf("修改成功!");getchar();
printf(" 请按Enter键返回主菜单 ");
}
/*************************************************************/
void fun6()
{
printf(" 感谢您使用本系统/n");
printf(" 请按Enter键退出系统/n ");
exit(1);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: