#include<iostream>
#include<string>
#include<iomanip>
using namespace std;
int n=0;
struct student
{
char name[20]; //名字
char num[20]; //学号
char Class[20]; //班级
char mayor[20]; //专业
int age; //年龄
char sex[4]; //性别
char addr[30]; //地址
char phone[15]; //电话
}s[100];
void add() //添加
{
system("cls");
cout<<"请输入学生基本信息:\n姓名:";
cin>>s[n].name;
cout<<"学号:";
cin>>s[n].num;
cout<<"年龄:";
cin>>s[n].age;
cout<<"班级:";
cin>>s[n].Class;
cout<<"专业:";
cin>>s[n].mayor;
cout<<"性别:";
cin>>s[n].sex
cout<<"地址:";
cin>>s[n].addr;
cout<<"电话:";
cin>>s[n].phone;
n++;
cout<<"\n\n您输入的信息已被保存!\n";
system("pause");
system("cls");
}
void print()
{
int i;
system("cls");
for(i=0;i<10;i++)
{
cout<<"姓名:"<<s[i].name;
cout<<setw(10)<<"学号:"<<s[i].num;
cout<<setw(10)<<"年龄:"<<s[i].age;
cout<<setw(10)<<"班级:"<<s[i].Class;
cout<<setw(10)<<"专业:"<<s[i].mayor;
cout<<setw(10)<<"性别:"<<s[i].sex;
cout<<setw(10)<<"地址:"<<s[i].addr;
cout<<setw(10)<<"电话:"<<s[i].phone;
cout<<"\n";
}
cout<<"\n信息显示完毕!\n";
system("pause");
system("cls");
}
void find() //查找
{
void find1();
void find2();
int a;
system("cls");
cout<<"1.按姓名查找\n2.按学号查询\n";
cin>>a;
switch(a)
{
case 1:
find1();
break;
case 2:
find2();
break;
}
}
void Delete() //删除
{
int i;
char a[20];
cout<<"请输入要删除的学号";
cin>>a;
for(i=0;i<n;i++)
if(strcmp(a,s[i].num)==0)
{
while(i<n)
{
s[i]=s[i+1];
i++;
}
n-=1;
}
}
void amend() //修改
{
int i,j,o;
char a[20];
system("cls");
cout<<"修改学生的学号:";
cin>>a;
//通过输入需要修改信息的学号找到他
cout<<"\n";
for(i=0;i<n;i++)
{
if(strcmp(a,s[i].num)==0)
{
cout<<"姓名:"<<s[i].name;
cout<<setw(10)<<"学号:"<<s[i].num;
cout<<setw(10)<<"年龄:"<<s[i].age;
cout<<setw(10)<<"班级:"<<s[i].Class;
cout<<setw(10)<<"专业:"<<s[i].mayor;
cout<<setw(10)<<"性别:"<<s[i].sex;
cout<<setw(10)<<"地址:"<<s[i].addr;
cout<<setw(10)<<"电话:"<<s[i].phone;
cout<<endl;
o=i;
}
}
cout<<"1.修改学号\n2.修改姓名\n3.修改专业\n4.修改年级\n5.修改性别\n6.修改出生日期\n7.修改地址\n8.修改电话 请选择:";
cin>>j;
//选择修改的信息
switch(j)
//选择结构!
{
case 1:
cout<<"学号修改为:";
cin>>s[o].num;
break;
case 2:
cout<<"姓名修改为:";
cin>>s[o].name;
break;
case 3:
cout<<"专业修改为:";
cin>>s[o].mayor;
break;
case 4:
cout<<"班级修改为:";
cin>>s[o].Class;
break;
case 5:
cout<<"性别修改为:";
scanf("%s",&s[o].sex);
break;
case 6:
cout<<"年龄修改为:";
cin>>s[o].age;
break;
case
7:
cout<<"地址修改为:";
cin>>s[o].addr;
break;
case
8:
cout<<"电话修改为:";
cin>>s[o].phone;
break;
}
cout<<"\n修改成功!\n\n";
system("pause");
system("cls");
}
void save()
{
int i;
FILE *fp;
fp=fopen("D:\\小学期\\学生信息管理系统\\c.txt","wb");
for(i=0;i<n;i++)
if(fwrite(&s[i],sizeof(s),1,fp)!=1)
cout<<"Error";
fclose(fp);
cout<<"\n\n已存入文件中!!!\n";
system("pause");
system("cls");
}
void read()
{
int i;
FILE *fp;
fp=fopen("D:\\小学期\\学生信息管理系统\\c.txt","rb");
for(i=0;i<9;i++)
fread(&s[i],sizeof(s),1,fp);
fclose(fp);
cout<<"\n\n已经读取文件!!!\n";
system("pause");
system("cls");
}
void find1()
{
int i;
char a[20];
system("cls");
cout<<"您选择按姓名查询:\n";
cin>>a;
for(i=0;i<n;i++)
{
if(strcmp(a,s[i].name)==0)
{
cout<<"姓名:"<<s[i].name;
cout<<setw(10)<<"学号:"<<s[i].num;
cout<<setw(10)<<"年龄:"<<s[i].age;
cout<<setw(10)<<"班级:"<<s[i].Class;
cout<<setw(10)<<"专业:"<<s[i].mayor;
cout<<setw(10)<<"性别:"<<s[i].sex;
cout<<setw(10)<<"地址:"<<s[i].addr;
cout<<setw(10)<<"电话:"<<s[i].phone;
cout<<"\n";
}
}
system("pause");
system("cls");
}
void find2()
{
int i;
char a[20];
system("cls");
cout<<"您选择按学号查询:\n";
cin>>a;
for(i=0;i<n;i++)
{
if(strcmp(a,s[i].num)==0)
{
cout<<"姓名:"<<s[i].name;
cout<<setw(10)<<"学号:"<<s[i].num;
cout<<setw(10)<<"年龄:"<<s[i].age;
cout<<setw(10)<<"班级:"<<s[i].Class;
cout<<setw(10)<<"专业:"<<s[i].mayor;
cout<<setw(10)<<"性别:"<<s[i].sex;
cout<<setw(10)<<"地址:"<<s[i].addr;
cout<<setw(10)<<"电话:"<<s[i].phone;
cout<<"\n";
}
}
system("pause");
system("cls");
}
void main() //主函数
{
int a=1;
while(1)
{
if(a>=0&&a<=9)
{
system("cls");
cout<<"〓〓〓〓〓〓〓〓〓〓 ☆ 学 生 信 息 管 理 系
统 ☆ 〓〓〓〓〓〓〓〓〓〓\n";
cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 1.增加学生信息 ☆ ★〓〓〓〓〓〓〓〓〓\n";
cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 2.显示全部信息 ☆ ★〓〓〓〓〓〓〓〓〓\n";
cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 3.查找全部信息 ☆ ★〓〓〓〓〓〓〓〓〓\n";
cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 4.删除学生信息 ☆ ★〓〓〓〓〓〓〓〓〓\n";
cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 5.修改学生信息 ☆ ★〓〓〓〓〓〓〓〓〓\n";
cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 6.保存学生信息 ☆ ★〓〓〓〓〓〓〓〓〓\n";
cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 7.读取学生信息 ☆ ★〓〓〓〓〓〓〓〓〓\n";
cout<<"〓〓〓〓〓〓〓〓〓★ ☆ 0.安全退出系统 ☆ ★〓〓〓〓〓〓〓〓〓\n";
cout<<"请选择:";
cin>>a;
switch(a)
{
case 1:
add();
break;
case 2:
print();
break;
case 3:
find();
break;
case 4:
Delete();
break;
case 5:
amend();
break;
case 6:
save();
break;
case 7:
read();
break;
case 0:
exit(0);
break;
}
}
else
{
cout<<" 您输入的不符合要求,请输入符合要求的数字返回主菜单!";
cin>>a;
}
}
}
C++学生信息管理系统
最新推荐文章于 2025-04-15 11:30:47 发布