|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
// class.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
char ch,filename[20];
struct cla
{
int studentID;
char studentName[10];
char studentGender[4];
}Class[70];
void Includefunction() //增加
{
FILE *fp1;
char ch;
int flag, index = 0;
fp1=fopen(filename,"at+");
printf("\n");
printf("请按照学号、姓名、性别的顺序格式输入学生信息,且在完成时请按ctrl+x结束\n");
while(true)
{
printf("请输入第%d个学生的信息:", ++ index);
flag = scanf("%d %s %s",&Class[70].studentID,&Class[70].studentName,&Class[70].studentGender);
if (!flag)
{
break;
}
fprintf(fp1,"%d %s %s\n",Class[70].studentID,Class[70].studentName,Class[70].studentGender);
}
fclose(fp1);
printf("你本次输入了%d个学生的信息,全部学生信息如下:\n", index);
fp1=fopen(filename,"at+");
while (fscanf(fp1,"%d %s %s",&Class[70].studentID,&Class[70].studentName,&Class[70].studentGender)!=EOF)
{
printf("%d %s %s\n",Class[70].studentID,Class[70].studentName,Class[70].studentGender);
}
fclose(fp1);
}
void Deletefunction() //删除
{
int r,s,y;
FILE *fp1;
fp1=fopen(filename,"at+");
printf("请选择学生信息来进行查找再进行删除:\n1、学号\n2、姓名\n");
scanf("%d",&r);
switch(r)
{
case 1:
printf("请输入你所要查找的学号\n");
scanf("%d",&Class[70].studentID);
for(s=0;s<70;s++)
{
if(Class[70].studentID!=Class[s].studentID)
printf("信息不存在\n");
}
break;
case 2:
printf("请输入你所要查找的姓名\n");
scanf("%s",&Class[70].studentName);
for(s=0;s<70;s++)
{
if(Class[70].studentName!=Class[s].studentName)
{
printf("信息不存在\n");
}
}
break;
}
printf("是否删除?1、yes or 2、no\n");
scanf("%d",&y);
switch(y)
{
case 1:
if(Class[s+1].studentName==NULL)
{
Class[s].studentName==NULL;
Class[s].studentID==NULL;
Class[s].studentGender==NULL;
}
for(;s<70;s++)
{
Class[s].studentID=Class[s+1].studentID;
Class[s].studentName=Class[s+1].studentName;
Class[s].studentGender=Class[s+1].studentGender.;//删除中。。。
}
printf("删除成功!\n");
fclose(fp1);
break;
case 2:
break;
}
}
void Modifyfunction() //修改
{
int o,z;
FILE *fp1;
fp1=fopen(filename,"at+");
printf("请选择要修改的学生信息来进行查找再进行修改:\n1、学号\n2、姓名\n");
scanf("%d",&o); //查找中。。。
switch(o)
{
case 1:
printf("请输入你所要查找的学号\n");
scanf("%d",&Class[70].studentID);
for(s=0;s<70;s++)
{
if(Class[70].studentID!=Class[s].studentID)
printf("信息不存在\n");
}
printf("是否修改?1、yes or 2、no\n");
scanf("%d",&z);
switch(z)
{
case 1:
printf("请输入要修改的学生信息\n");
scanf("%d",&ch);
Class[70].studentID=ch;
printf("修改成功!\n");
break;
case 2:
break;
}
break;
case 2:
printf("请输入你所要查找的姓名\n");
scanf("%s",&Class[70].studentName);
for(s=0;s<70;s++)
{
if(Class[70].studentName!=Class[s].studentName)
printf("信息不存在\n");
}
printf("是否修改?1、yes or 2、no\n");
scanf("%d",&z);
switch(z)
{
case 1:
printf("请输入要修改的学生信息\n");
scanf("%d",&ch);
Class[70].studentName=ch;
printf("修改成功!\n");
break;
case 2:
break;
}
break;
}
fclose(fp1);
}
int main(int argc, char* argv[])
{
FILE *fp1,*fp2;
int a,b,c;
while((a!='1')&&(a!='2')&&(a!='3')) //循环选择系 统
{
printf("请选择:\n1、打开一个班级花名册\n2、新建一个班级花名册\n3、退出系统\n");
scanf("%d",&a);
switch(a)
{
case 1:
int i;
FILE *fp1;
printf("请输入文件名\n"); //用filename代替选择文件名,先输入文件名称,再选择输入
scanf("%s",filename);
fp1=fopen(filename,"at+");
ch=fgetc(fp1);
if(fp1=fopen(filename,"at+")==NULL)
{
printf("无法打开文件。\n");
exit(0);
}
while(ch!=EOF)
{
putchar(ch);
ch=fgetc(fp1); //文件数据显示在屏幕上
}
printf("\n");
if(i!=5) //如果不是选择5的话就循环
{
printf("请选择:\n1、增加学生信息\n2、删除学生信息\n3、修改学生信息\n4、查看\n");
scanf("%d",&i);
switch(i)
{
case 1:
Includefunction();//增加
break;
case 2:
Deletefunction(); //删除
break;
case 3:
Modifyfunction(); //修改
break;
case 4:
break;
}
}
break;
case 2:
int b;
printf("请为文件命名\n");
scanf("%s",filename);
fp2=fopen(filename,"wt+");
if(!(fp2=fopen(filename,"wt+")))
{
printf("命名错误\n");
exit(0);
}
printf("请按照学号、姓名、性别的格式输入学生信息\n");
for(;;)//到达某一项数值就停止。。。
{
scanf("%d %s %s",&Class[70].studentID,&Class[70].studentName,&Class[70].studentGender);
fprintf(fp2,"%d %s %s\n",Class[70].studentID,Class[70].studentName,Class[70].studentGender);
}
fclose(fp2);
printf("你本次输入的学生信息有以下:\n");
fp2=fopen(filename,"at+");
while (fscanf(fp2,"%d %s %s",&Class[70].studentID,&Class[70].studentName,&Class[70].studentGender)!=EOF)
{
printf("%d %s %s\n",Class[70].studentID,Class[70].studentName,Class[70].studentGender);
}
fclose(fp2);
break;
case 3:
printf("3、退出系统\n");
break;
default:
printf("错误!请重新输入!\n");
exit(0);
}
}
}
|
|