主题:求助!!!以下系统不知道怎么画流程图啊
#include "stdio.h"
#include "conio.h"
#include "stdlib.h"
#include "string.h"
#include "windows.h"
int stu_num=0; //全局变量,已输入成绩的学生人数
struct student
{
char num[11]; //储存学号
char name[11]; //储存名字
char sex[3]; //储存性别
char date[11]; //储存入学时间
float software; //储存软件成绩
float english; //储存英语成绩
float math; //储存数学成绩
}student[100];
void warning() //警告函数
{
char a;
printf("您所查找的学生暂无数据,按任意键返回重新输入");
a=getch(); //储存任意键
}
void input() //输入函数
{
char a;
do
{
system("cls");
printf("(1)输入学生数据\n(0)返回主菜单\n请输入您要执行的选项:");
a=getch(); //获取输入选项
if(a=='1') //输入学生数据
{
system("cls"); //清屏函数
printf("下面输入第%d个学生的数据\n学号:",stu_num+1); //储存学生数据于结构体中
scanf("%s",&student[stu_num].num);
printf("姓名:");
scanf("%s",&student[stu_num].name);
printf("性别(m/f):");
scanf("%s",&student[stu_num].sex);
printf("入学时间:");
scanf("%s",&student[stu_num].date);
printf("软件成绩:");
scanf("%f",&student[stu_num].software);
printf("英语成绩:");
scanf("%f",&student[stu_num].english);
printf("数学成绩:");
scanf("%f",&student[stu_num].math);
stu_num++;
}
if(a=='0') //退出输入函数
{
break; //强制结束循环以退出输入函数
}
}while(1);
}
void output() //输出函数
{
system("cls"); //清屏函数
int i,j;
printf("学号\t 姓名 性别 入学年月 学期 软件成绩 英语成绩 数学成绩 \n");
for(i=0;i<stu_num;i++) //通过for语句逐个输出学生数据
{
printf("%-12s%-8s%-8s%-10s%-8.2f%-8.2f%-8.2f\n",student[i].num,student[i].name,student[i].sex,student[i].date,student[i].software,student[i].english,student[i].math);
}
printf("按任意键返回主菜单");
j=getch(); //储存任意键
}
void revise() //修改函数
{
int i=0;
char a,num[11],name[11];
st: system("cls"); //清屏函数
printf("(2)按学号查找修改\n(3)按名字查找修改\n(0)返回主菜单\n请输入您要执行的选项:");
a=getch(); //获取输入选项
if(a=='2') //按学号查找
{
printf("请输入该学生学号:");
scanf("%s",&num); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(num,student[i].num)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='3') //按姓名查找
{
printf("请输入该学生姓名:");
scanf("%s",&name); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(name,student[i].name)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='0') //退出修改函数
{
return;
}
else //为了防止选错选项
{
goto st;
}
if(i==stu_num) //未找到学生数据时提示警告并重新查找
{
warning();
goto st;
}
system("cls");
printf("您要更改的学生的信息为:\n"); //输出欲修改的学生信息
printf("学号\t 姓名 性别 入学时间 软件成绩 英语成绩 数学成绩 \n");
printf("%-12s%-8s%-8s%-10s%-8.2f%-8.2f%-8.2f\n",student[i].num,student[i].name,student[i].sex,student[i].date,student[i].software,student[i].english,student[i].math);
printf("请更新该学生的数据\n学号:"); //找到后进行数据更新
scanf("%s",&student[i].num);
printf("姓名:");
scanf("%s",&student[i].name);
printf("性别:");
scanf("%s",&student[i].sex);
printf("入学时间:");
scanf("%s",&student[i].date);
printf("软件成绩:");
scanf("%f",&student[i].software);
printf("英语成绩:");
scanf("%f",&student[i].english);
printf("数学成绩:");
scanf("%f",&student[i].math);
printf("该学生数据已修改,按任意键返回");
a=getch(); //储存任意键
}
void search() //查询函数
{
int i=0;
char a,num[11],name[11];
st: system("cls"); //清屏函数
printf("(2)按学号查找\n(3)按名字查找\n(0)返回主菜单\n请输入您要执行的选项:");
a=getch(); //获取输入选项
if(a=='2') //按学号查找
{
printf("请输入该学生学号:");
scanf("%s",&num); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(num,student[i].num)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='3') //按姓名查找
{
printf("请输入该学生姓名:");
scanf("%s",&name); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(name,student[i].name)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='0') //退出查询函数
{
return;
}
else //为了防止选错选项
{
goto st;
}
if(i==stu_num) //未找到学生数据时提示警告并重新查找
{
warning();
goto st;
}
printf("学号\t 姓名 性别 入学时间 软件成绩 英语成绩 数学成绩 \n");
printf("%-12s%-8s%-8s%-10s%-8.2f%-8.2f%-8.2f\n",student[i].num,student[i].name,student[i].sex,student[i].date,student[i].software,student[i].english,student[i].math);
printf("按任意键返回主菜单");
a=getch();
}
void del() //删除函数
{
int i=0,j;
char a,num[11],name[11];
st: system("cls"); //清屏函数
printf("(2)按学号查找删除\n(3)按名字查找删除\n(0)返回主菜单\n请输入您要执行的选项:");
a=getch(); //获取输入选项
if(a=='2') //按学号查找
{
printf("请输入该学生学号:");
scanf("%s",&num); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(num,student[i].num)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='3') //按姓名查找
{
printf("请输入该学生姓名:");
scanf("%s",&name); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(name,student[i].name)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='0') //退出删除函数
{
return;
}
else
{
goto st; //为了防止选错选项
}
if(i==stu_num) //未找到学生数据时提示警告并重新查找
{
warning();
goto st;
}
for(j=i;j<stu_num;j++) //通过for语句进行数据覆盖实现删除学生数据
{
student[j]=student[j+1];
}
stu_num-=1;
printf("该学生数据已删除,按任意键返回主菜单");
a=getch();
}
void menu() //目录函数
{
do
{
char a;
st: system("cls"); //清屏函数
printf(" 〓〓〓〓〓〓〓〓〓〓 ☆ 学 生 成 绩 管 理 系 统 ☆ 〓〓〓〓〓〓〓〓〓 \n");
printf(" ○ ○ ○ ○ ★★★★★ ★★★★★★★ ★★★★★●│● ● ● \n");
printf(" 〓〓〓〓〓〓〓〓〓★ ☆ (1)输入学生数据 ☆ ★〓〓〓〓〓〓〓〓〓 \n");
printf(" ○ ○ ○ ○ ★★★★★ (4)查看学生数据 ★★★★★●●●● \n");
printf( "〓〓〓〓〓〓〓〓〓★ ☆ (5)修改学生数据 ☆ ★〓〓〓〓〓〓〓〓〓 \n");
printf(" ○ ○ ○ ○ ★★★★★ (6)删除学生数据 ★★★★★●●●● \n");
printf(" 〓〓〓〓〓〓〓〓〓★ ☆ (7)查询学生数据 ☆ ★〓〓〓〓〓〓〓〓〓 \n");
printf(" ○ ○ ○ ○ ★★★★★ (0)安全退出系统 ★★★★★●●● \n");
a=getch();
switch(a)
{
case '1': //进入输入函数
input();
break;
case '4': //进入输出函数
output();
break;
case '5': //进入修改函数
revise();
break;
case '6': //进入删除函数
del();
break;
case '7': //进入查找函数
search();
break;
case '0': //退出程序
return;
default: //为了防止选错选项
goto st;
}
}while(1);
}
void main()
{
printf(" ◤ ●●●● ◥ \n");
printf(" ▕ ●● ▕ \n");
printf(" ── ● ● ── \n");
printf(" ── ﹀ ── \n");
printf(" ◣10软件 李思蔚◢ \n");
printf(" ☆欢迎☆ ∞┼∞ ☆使用☆ \n");
printf(" ███ ∞┼∞ ███ \n");
printf(" ◥█◤ ∞┼∞ ◥█◤ \n");
printf(" ═══╧═══ \n");
printf(" Please wait a minute!!!! \n");
Sleep(7000);
menu();
}
#include "conio.h"
#include "stdlib.h"
#include "string.h"
#include "windows.h"
int stu_num=0; //全局变量,已输入成绩的学生人数
struct student
{
char num[11]; //储存学号
char name[11]; //储存名字
char sex[3]; //储存性别
char date[11]; //储存入学时间
float software; //储存软件成绩
float english; //储存英语成绩
float math; //储存数学成绩
}student[100];
void warning() //警告函数
{
char a;
printf("您所查找的学生暂无数据,按任意键返回重新输入");
a=getch(); //储存任意键
}
void input() //输入函数
{
char a;
do
{
system("cls");
printf("(1)输入学生数据\n(0)返回主菜单\n请输入您要执行的选项:");
a=getch(); //获取输入选项
if(a=='1') //输入学生数据
{
system("cls"); //清屏函数
printf("下面输入第%d个学生的数据\n学号:",stu_num+1); //储存学生数据于结构体中
scanf("%s",&student[stu_num].num);
printf("姓名:");
scanf("%s",&student[stu_num].name);
printf("性别(m/f):");
scanf("%s",&student[stu_num].sex);
printf("入学时间:");
scanf("%s",&student[stu_num].date);
printf("软件成绩:");
scanf("%f",&student[stu_num].software);
printf("英语成绩:");
scanf("%f",&student[stu_num].english);
printf("数学成绩:");
scanf("%f",&student[stu_num].math);
stu_num++;
}
if(a=='0') //退出输入函数
{
break; //强制结束循环以退出输入函数
}
}while(1);
}
void output() //输出函数
{
system("cls"); //清屏函数
int i,j;
printf("学号\t 姓名 性别 入学年月 学期 软件成绩 英语成绩 数学成绩 \n");
for(i=0;i<stu_num;i++) //通过for语句逐个输出学生数据
{
printf("%-12s%-8s%-8s%-10s%-8.2f%-8.2f%-8.2f\n",student[i].num,student[i].name,student[i].sex,student[i].date,student[i].software,student[i].english,student[i].math);
}
printf("按任意键返回主菜单");
j=getch(); //储存任意键
}
void revise() //修改函数
{
int i=0;
char a,num[11],name[11];
st: system("cls"); //清屏函数
printf("(2)按学号查找修改\n(3)按名字查找修改\n(0)返回主菜单\n请输入您要执行的选项:");
a=getch(); //获取输入选项
if(a=='2') //按学号查找
{
printf("请输入该学生学号:");
scanf("%s",&num); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(num,student[i].num)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='3') //按姓名查找
{
printf("请输入该学生姓名:");
scanf("%s",&name); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(name,student[i].name)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='0') //退出修改函数
{
return;
}
else //为了防止选错选项
{
goto st;
}
if(i==stu_num) //未找到学生数据时提示警告并重新查找
{
warning();
goto st;
}
system("cls");
printf("您要更改的学生的信息为:\n"); //输出欲修改的学生信息
printf("学号\t 姓名 性别 入学时间 软件成绩 英语成绩 数学成绩 \n");
printf("%-12s%-8s%-8s%-10s%-8.2f%-8.2f%-8.2f\n",student[i].num,student[i].name,student[i].sex,student[i].date,student[i].software,student[i].english,student[i].math);
printf("请更新该学生的数据\n学号:"); //找到后进行数据更新
scanf("%s",&student[i].num);
printf("姓名:");
scanf("%s",&student[i].name);
printf("性别:");
scanf("%s",&student[i].sex);
printf("入学时间:");
scanf("%s",&student[i].date);
printf("软件成绩:");
scanf("%f",&student[i].software);
printf("英语成绩:");
scanf("%f",&student[i].english);
printf("数学成绩:");
scanf("%f",&student[i].math);
printf("该学生数据已修改,按任意键返回");
a=getch(); //储存任意键
}
void search() //查询函数
{
int i=0;
char a,num[11],name[11];
st: system("cls"); //清屏函数
printf("(2)按学号查找\n(3)按名字查找\n(0)返回主菜单\n请输入您要执行的选项:");
a=getch(); //获取输入选项
if(a=='2') //按学号查找
{
printf("请输入该学生学号:");
scanf("%s",&num); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(num,student[i].num)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='3') //按姓名查找
{
printf("请输入该学生姓名:");
scanf("%s",&name); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(name,student[i].name)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='0') //退出查询函数
{
return;
}
else //为了防止选错选项
{
goto st;
}
if(i==stu_num) //未找到学生数据时提示警告并重新查找
{
warning();
goto st;
}
printf("学号\t 姓名 性别 入学时间 软件成绩 英语成绩 数学成绩 \n");
printf("%-12s%-8s%-8s%-10s%-8.2f%-8.2f%-8.2f\n",student[i].num,student[i].name,student[i].sex,student[i].date,student[i].software,student[i].english,student[i].math);
printf("按任意键返回主菜单");
a=getch();
}
void del() //删除函数
{
int i=0,j;
char a,num[11],name[11];
st: system("cls"); //清屏函数
printf("(2)按学号查找删除\n(3)按名字查找删除\n(0)返回主菜单\n请输入您要执行的选项:");
a=getch(); //获取输入选项
if(a=='2') //按学号查找
{
printf("请输入该学生学号:");
scanf("%s",&num); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(num,student[i].num)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='3') //按姓名查找
{
printf("请输入该学生姓名:");
scanf("%s",&name); //输入查找数据并用for语句进行逐个对比
for(i=0;i<stu_num;i++)
{
if(strcmp(name,student[i].name)==0)
{
break; //找到后结束循环
}
}
}
else if(a=='0') //退出删除函数
{
return;
}
else
{
goto st; //为了防止选错选项
}
if(i==stu_num) //未找到学生数据时提示警告并重新查找
{
warning();
goto st;
}
for(j=i;j<stu_num;j++) //通过for语句进行数据覆盖实现删除学生数据
{
student[j]=student[j+1];
}
stu_num-=1;
printf("该学生数据已删除,按任意键返回主菜单");
a=getch();
}
void menu() //目录函数
{
do
{
char a;
st: system("cls"); //清屏函数
printf(" 〓〓〓〓〓〓〓〓〓〓 ☆ 学 生 成 绩 管 理 系 统 ☆ 〓〓〓〓〓〓〓〓〓 \n");
printf(" ○ ○ ○ ○ ★★★★★ ★★★★★★★ ★★★★★●│● ● ● \n");
printf(" 〓〓〓〓〓〓〓〓〓★ ☆ (1)输入学生数据 ☆ ★〓〓〓〓〓〓〓〓〓 \n");
printf(" ○ ○ ○ ○ ★★★★★ (4)查看学生数据 ★★★★★●●●● \n");
printf( "〓〓〓〓〓〓〓〓〓★ ☆ (5)修改学生数据 ☆ ★〓〓〓〓〓〓〓〓〓 \n");
printf(" ○ ○ ○ ○ ★★★★★ (6)删除学生数据 ★★★★★●●●● \n");
printf(" 〓〓〓〓〓〓〓〓〓★ ☆ (7)查询学生数据 ☆ ★〓〓〓〓〓〓〓〓〓 \n");
printf(" ○ ○ ○ ○ ★★★★★ (0)安全退出系统 ★★★★★●●● \n");
a=getch();
switch(a)
{
case '1': //进入输入函数
input();
break;
case '4': //进入输出函数
output();
break;
case '5': //进入修改函数
revise();
break;
case '6': //进入删除函数
del();
break;
case '7': //进入查找函数
search();
break;
case '0': //退出程序
return;
default: //为了防止选错选项
goto st;
}
}while(1);
}
void main()
{
printf(" ◤ ●●●● ◥ \n");
printf(" ▕ ●● ▕ \n");
printf(" ── ● ● ── \n");
printf(" ── ﹀ ── \n");
printf(" ◣10软件 李思蔚◢ \n");
printf(" ☆欢迎☆ ∞┼∞ ☆使用☆ \n");
printf(" ███ ∞┼∞ ███ \n");
printf(" ◥█◤ ∞┼∞ ◥█◤ \n");
printf(" ═══╧═══ \n");
printf(" Please wait a minute!!!! \n");
Sleep(7000);
menu();
}