📄 sharon.cpp
字号:
printf("\t\t\t | 学号 | 姓名 | 性别 |\n");
printf("\t\t\t %d %s %c ",stu[i].num,stu[i].name,stu[i].sex);
printf("\n\t\t=====================================================\n");
fflush(stdin);
printf("\n\t 您要修改哪项信息?(name,sex) ");
gets(c); //让用户选择修改哪个选项
fflush(stdin);
if((strcmp(c,"sex"))==0) //如果用户选择修改学生的性别
{
printf("\t\t\t\t输入修改后的值: ");
scanf(" %c",&v);
stu[i].sex=v; //对性别赋新的值
}
else //如果用户选择修改学生的姓名
{
printf("\t\t\t\t输入修改后的值: ");
gets(d);
strcpy(stu[i].name,d); //对姓名赋新的值
}
printf("\t\t\t 修改以后的信息为:\n");
printf("\t\t\t | 学号 | 姓名 | 性别 |\n");
printf("\t\t\t %d %s %c ",stu[i].num,stu[i].name,stu[i].sex);
printf("\n\t\t=====================================================\n");
}
if(k==0)
printf("\t\t\t 没有找到该学生信息\n");
printf("\t\t\t 是否继续修改学生信息Y/N ");
fflush(stdin);
p=getchar();
}while(p!='n');
}
int delete_record(student stu[],int s)//删除学生记录
{
int num,i,j,k;
char c,p;
do
{ int x=0;
system("cls");
printf(" ╭╮╭╮\n");
printf(" ╭★┴┴★╮\n");
printf(" │︵ ︵│\n");
printf(" ╰○--○╯ 制作:丁乐 刘海文\n");
printf(" ╰○○╯ \n");
printf("\t\t ************************************************\n");
printf("\t\t *******'怪杰'一组*******************************\n");
printf("\t\t ********·················******\n");
printf("\t\t ********·您正在使用的是学生信息删除系统·******\n");
printf("\t\t ********·················******\n");
printf("\t\t ************************************************\n");
printf("\t\t ************************************************\n");
printf("\t\t\t 请输入您要删除信息的学生学号: ");
scanf("%d",&num);
for(i=0;i<s;i++)
if(stu[i].num==num) //查找是否有要删除信息的学生学号
{
x=1;
k=i;
printf("\t\t\t 找到该学生信息如下\n");
printf("\t\t\t | 学号 | 姓名 | 性别 |\n");
printf("\t\t\t %d %s %c ",stu[i].num,stu[i].name,stu[i].sex);
printf("\n\t\t=====================================================\n");
printf("\t\t\t 确定删除此学生全部信息Y/N");
fflush(stdin);
c=getchar();
if(c=='y') //用户确认要删除该学生的信息
{
for(j=k;j<=s;j++) //从当前学生记录开始,记录前移,删除当前记录
{
stu[j].num=stu[j+1].num;
strcpy(stu[j].name,stu[j+1].name);
stu[j].sex=stu[j+1].sex;
}
s--;//删除一条学生记录,则记录数减1
printf("\t\t\t 删除成功,显示全部学生信息如下:\n");
printf("\t\t\t | 学号 | 姓名 | 性别 |\n");
if(s==0)//s=0,即学生记录为0
printf("\t\t\t 学生信息已全部删除\n");
else
{
for(j=0;j<s;j++)
{
printf("\t\t\t %d %s %c \n",stu[j].num,stu[j].name,stu[j].sex);
} //输出删除信息后的全部学生信息
}
}
}
if(x==0)
printf("\t\t\t 没有找到该学生信息.\n");
printf("\t\t\t 是否继续删除学生信息Y/N");
fflush(stdin);
p=getchar();
}while(p!='n');
return s;
}
void query_by_name(student stu[],int s)//按姓名查找学生记录
{
char name[10],c;
int i;
do
{ int k=0;//设置标记
system("cls");
printf(" ╭╮╭╮\n");
printf(" ╭★┴┴★╮\n");
printf(" │︵ ︵│\n");
printf(" ╰○--○╯ 制作:王培志 金亮\n");
printf(" ╰○○╯ \n");
printf("\t\t ************************************************\n");
printf("\t\t *******'怪杰'一组*******************************\n");
printf("\t\t ************************************************\n");
printf("\t\t ********·················******\n");
printf("\t\t ********·您正在使用的是学生信息查询系统·******\n");
printf("\t\t ********·················******\n");
printf("\t\t ************************************************\n");
printf("\t\t ************************************************\n");
printf("\t\t ************************************************\n");
printf("\t\t\t 请输入您要查找的学生姓名: ");
fflush(stdin);
gets(name); //输入要查找的学生姓名
for(i=0;i<s;i++)
{
if(!(strcmp(stu[i].name,name)))
{
k=1;
printf("\t\t\t 找到该学生信息如下\n");
printf("\t\t\t | 学号 | 姓名 | 性别 |\n");
printf("\t\t\t %d %s %c ",stu[i].num,stu[i].name,stu[i].sex);
}
}
if(k==0)
printf("\t\t\t 没有找到您要查找的学生信息.");
printf("\n\t\t=====================================================\n");
printf("\n\t\t 是否继续查找学生信息?Y/N");
fflush(stdin);
c=getchar();
}while(c!='n');
}
void input_score(student stu[],int s)//输入学生成绩
{
int i;
char c;
do
{ system("cls");
printf(" ╭╮╭╮\n");
printf(" ╭★┴┴★╮\n");
printf(" │︵ ︵│\n");
printf(" ╰○--○╯ 制作:李仁君 徐熙辉\n");
printf(" ╰○○╯ \n");
printf("\t\t ************************************************\n");
printf("\t\t *******'怪杰'一组*******************************\n");
printf("\t\t ************************************************\n");
printf("\t\t ********·················******\n");
printf("\t\t ********·您正在使用的是学生成绩录入系统·******\n");
printf("\t\t ********·················******\n");
printf("\t\t ************************************************\n");
printf("\t\t ************************************************\n");
printf("\t\t ************************************************\n");
for(i=0;i<s;i++)
{
printf("\t\t\t 输入%s的成绩:",stu[i].name);
fflush(stdin);
scanf("%f",&stu[i].score);//依次输入学生的成绩
}
printf("\t\t\t 学生信息显示如下\n");
printf("\t\t\t| 学号 | 姓名 | 性别 | 成绩 |\n");
for(i=0;i<s;i++)
printf("\t\t\t %d %s %c %.1f\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].score);
printf("\t\t=================================================\n");
printf("\t\t=================================================\n");
printf("\t\t==========成绩输入完毕.按E退回主菜单=============\n");
printf("\t\t==================================================\n");
printf("\t\t==================================================\n");
fflush(stdin);
c=getchar();
}while(c!='e');
}
void modify_score(student stu[],int s)//修改学生成绩
{
int num,i,score;
char c;
do
{ int k=0;
system("cls");
printf(" ╭╮╭╮\n");
printf(" ╭★┴┴★╮\n");
printf(" │︵ ︵│\n");
printf(" ╰○--○╯ 制作:李仁君 徐熙辉\n");
printf(" ╰○○╯ \n");
printf("\t\t ************************************************\n");
printf("\t\t *******'怪杰'一组*******************************\n");
printf("\t\t ************************************************\n");
printf("\t\t ********·················******\n");
printf("\t\t ********·您正在使用的是学生成绩修改系统·******\n");
printf("\t\t ********·················******\n");
printf("\t\t ************************************************\n");
printf("\t\t ************************************************\n");
printf("\t\t ************************************************\n");
printf("\t\t\t 请输入要修改成绩的学生学号:");
scanf("%d",&num);
for(i=0;i<s;i++)
if(stu[i].num==num)//找到相应学号的学生,并将其成绩修改
{
k=1;
printf("\t\t\t 成绩修改为:");
scanf("%d",&score);
stu[i].score=score;
printf("\t\t\t 修改后学生信息如下\n");
printf("\t\t\t| 学号 | 姓名 | 性别 | 成绩 |\n");
for(i=0;i<s;i++)
printf("\t\t\t %d %s %c %.1f\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].score);
}
if(k==0)
printf("\t\t\t 没有找到该学生信息.\n");
printf("\t\t\t 是否继续修改学生成绩Y/N");
fflush(stdin);
c=getchar();
}while(c!='n');
}
void delete_score(student stu[],int s)//删除成绩
{
int num,i;
char c;
do
{ int k=0;//设置标记
system("cls");
printf(" ╭╮╭╮\n");
printf(" ╭★┴┴★╮\n");
printf(" │︵ ︵│\n");
printf(" ╰○--○╯ 制作:李仁君 徐熙辉\n");
printf(" ╰○○╯ \n");
printf("\t\t ************************************************\n");
printf("\t\t *******'怪杰'一组*******************************\n");
printf("\t\t ************************************************\n");
printf("\t\t ********·················******\n");
printf("\t\t ********·您正在使用的是学生成绩删除系统·******\n");
printf("\t\t ********·················******\n");
printf("\t\t ************************************************\n");
printf("\t\t ************************************************\n");
printf("\t\t ************************************************\n");
printf("\t\t\t 请输入要删除成绩的学生学号:");
scanf("%d",&num);
for(i=0;i<s;i++)
{
if(stu[i].num==num) //找到了要删除成绩的学生学号
{
k=1;
stu[i].score=0;
printf("\t\t\t 删除该绩后学生信息如下\n");
printf("\t\t\t| 学号 | 姓名 | 性别 | 成绩 |\n");
for(i=0;i<s;i++)
printf("\t\t\t %d %s %c %.1f\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].score);
}
}
if(k==0)
printf("\t\t\t 没有找到该学生信息.\n");
printf("\t\t\t 是否继续删除学生成绩Y/N");
fflush(stdin);
c=getchar();
}while(c!='n');
}
void statistic(student stu[],int s)//求最大成绩,最小成绩,总成绩,平均成绩
{
float sum=0.0,average,temp;
int i,j;
char c;
do
{
system("cls");
printf(" ╭╮╭╮\n");
printf(" ╭★┴┴★╮\n");
printf(" │︵ ︵│\n");
printf(" ╰○--○╯ 制作:刘广宇\n");
printf(" ╰○○╯ \n");
printf("\t\t ************************************************\n");
printf("\t\t *******'怪杰'一组*******************************\n");
printf("\t\t ************************************************\n");
printf("\t\t ********·················******\n");
printf("\t\t ********·您正在使用的是学生成绩统计系统·******\n");
printf("\t\t ********·················******\n");
printf("\t\t ************************************************\n");
printf("\t\t ************************************************\n");
printf("\t\t ************************************************\n");
for(i=0;i<s;i++)
sum+=stu[i].score; //对成绩求和
average=sum/(s*1.0); //求平均成绩
for(i=1;i<s;i++)//对成绩进行排序
for(j=0;j<s-i;j++)
if(stu[j].score>stu[j+1].score)
{
temp=stu[j].score;
stu[j].score=stu[j+1].score;
stu[j+1].score=temp;
}
printf("\t\t\t 按成绩排名后的学生信息如下 :\n");
printf("\t\t\t| 学号 | 姓名 | 性别 | 成绩 |\n");
for(i=0;i<s;i++)
printf("\t\t\t %d %s %c %.1f\n",stu[i].num,stu[i].name,stu[i].sex,stu[i].score);
printf("\t\t\t 总成绩为: %.1f分 平均成绩为: %.1f分\n",sum,average);
printf("\t\t=================================================\n");
printf("\t\t=================================================\n");
printf("\t\t==========成绩统计完毕.按E退回主菜单=============\n");
printf("\t\t==================================================\n");
printf("\t\t==================================================\n");
fflush(stdin);
c=getchar();
}while(c!='e');
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -