当前位置: 首页 > news >正文

部门网站建设工作总结口碑营销渠道

部门网站建设工作总结,口碑营销渠道,汝州文明建设网站,个人做房产网站文章目录 一、前言二、目的三、框架1.菜单1.1主菜单1.2子菜单 2.流程图2.1总流程图2.2开始流程图2.3增加学生信息流程图2.4.删除学生信息流程图2.5修改学生信息流程图2.6查询学生信息流程图2.7对学生信息排序流程图 3.思路 四、代码五、演示视频 一、前言 因为最近是在赶进度总…

文章目录

    • 一、前言
    • 二、目的
    • 三、框架
      • 1.菜单
        • 1.1主菜单
        • 1.2子菜单
      • 2.流程图
        • 2.1总流程图
        • 2.2开始流程图
        • 2.3增加学生信息流程图
        • 2.4.删除学生信息流程图
        • 2.5修改学生信息流程图
        • 2.6查询学生信息流程图
        • 2.7对学生信息排序流程图
      • 3.思路
    • 四、代码
    • 五、演示视频

一、前言

因为最近是在赶进度总结,数组和指针的笔记已经更新,但是数组、指针的习题还未总结,数组的题已经开始总结,但是还没总结完,所以还没发出来,目前学习进度已经到了学生管理系统,趁热打铁将学生管理系统的数组篇更新,因为之后还有指针篇,怕到时候代码搞混了,由于代码注释都比较清晰,所以不在一一赘述代码含义,有疑问可以给老王留言~

二、目的

用C语言数组写一个学生信息管理系统,并实现以下功能
1.对学生信息实现增、删、改、查;
2.对于增加学生信息可以判定内存是否已满、是否重复录入(学号唯一性);
3.对于删除学生信息判定是否有该生信息;
4.对于修改学生信息判定是否有该生信息;
5.对于查询学生信息判定是否有该生信息、仅打印查询信息;
6.排序功能——按照学号排序/按照成绩排序
7.以管理员身份打印所有学生信息;
8.退出系统

三、框架

1.菜单

1.1主菜单

****** -学生管理系统******
1.添加学生信息
2.删除学生信息
3.修改学生信息
4.查询学生信息
5.学生信息排序
0.退出管理系统

1.2子菜单

**排序方式
1-按照学号排序
2-按照成绩排序

2.流程图

2.1总流程图

在这里插入图片描述
由于不太清楚,我把详细的各部分列出来如下:

2.2开始流程图

在这里插入图片描述

2.3增加学生信息流程图

在这里插入图片描述

2.4.删除学生信息流程图

在这里插入图片描述

2.5修改学生信息流程图

在这里插入图片描述

2.6查询学生信息流程图

在这里插入图片描述

2.7对学生信息排序流程图

在这里插入图片描述

3.思路

1.构建一个学生结构体,里面包含学生学号、姓名、班级、成绩;
2.该结构体是一个数组型,用来存储学生呢信息;
3.先写主菜单和主菜单选项函数及四个相关函数——增删改查;
4.写方便验证的函数——打印函数;
5.写排序方式的子菜单和获取菜单选项的函数;
6.写排序方式——按照学号排序函数/按照成绩排序函数
7.排序函数用的冒泡排序法(在数组的笔记那篇文章有讲);

四、代码

#include "stdio.h"
#define STUDENT_NUM 30//创建一个学生结构体,包含学号、姓名、班级、成绩
struct Student
{int no;char name[64];int class;float score;
};
//初始化一个学生结构体为数组
struct Student student[STUDENT_NUM] = {0};void Student_Init(void);
int StudentMenu(void); //主菜单函数声明
void Student_ADD();
void Student_Revise();
void Student_Del();
void Student_Find();
void Student_Sort();
int SortMenu();
void SortNo();
void SortScore();
void Student_Printf();//初始化学生信息,将开辟STUDENT_NUM这么大的空间,并全部赋-1表示未录入信息
void Student_Init(void)
{for (int i = 0;i < STUDENT_NUM;i++){student[i].no = -1; //未录入信息标志}
}int main()
{Student_Init();int num1;while (1){num1=StudentMenu();switch (num1){case 1:Student_ADD();break;case 2:Student_Del();break;case 3:Student_Revise();break;case 4:Student_Find();break;case 5:Student_Sort();break;case 111:Student_Printf();break;case 0:goto over;}}
over:printf("感谢使用学生管理系统!\n");
}//主菜单
int StudentMenu(void)
{int num;
p1:printf("****** -学生管理系统******\n");printf("******1.添加学生信息******\n");printf("******2.删除学生信息******\n");printf("******3.修改学生信息******\n");printf("******4.查询学生信息******\n");printf("******5.学生信息排序******\n");printf("******0.退出管理系统******\n");printf("请输入你要执行操作的序号:\n");scanf("%d", &num);if ((num >= 0 && num <= 5) || (num == 111)) //111打印所有数据{return num;}else{printf("您输入的菜单选项不正确,清重新输入!\n");goto p1;}
}
//学生信息排序子菜单
int SortMenu()
{int num1;
p1:printf("*******排序方式*****\n");printf("***1-按照学号排序***\n");printf("***2-按照成绩排序***\n");printf("请输入排序方式:\n");scanf("%d",&num1);if (num1>=1&&num1<=2){return num1;}else{printf("输入错误选项,请重新选择排序方式!\n");goto p1;}}//添加学生信息
void Student_ADD()
{int i;//遍历学号数组,找到放数据的空间printf("正在执行添加学生信息操作……\n");for (i = 0; i < STUDENT_NUM; i++){if (student[i].no==-1)//有空间,跳出循环,输入数据{break;}}  if (i==STUDENT_NUM){printf("空间已满,禁止继续录入!\n");}//输入信息,由于有判定学号唯一,用tem保存从屏幕上获取的数据struct Student temp;printf("请输入学号:\n");scanf("%d",&temp.no);   printf("请输入姓名:\n");getchar();scanf("%s",temp.name);printf("请输入班级:\n");getchar();scanf("%d",&temp.class);printf("请输入成绩:\n");scanf("%f",&temp.score);//因为学号是唯一的,判断不能重复输入for (int j = 0; j < STUDENT_NUM; j++){if (student[j].no==temp.no){printf("该学生已被录入,请不要重复录入!\n");}   }student[i]=temp;}
//修改学生信息
void Student_Revise()
{int num_0=0;//设置查询标志位,没找到0,找到1printf("正在执行修改学生信息操作……\n");
p1:printf("请输入您要修改的学号:\n");int num,i;scanf("%d",&num);for (i = 0; i < STUDENT_NUM; i++)   {if (num!=student[i].no){num_0=0;continue;}else if(student[i].no==num){num_0=1;break;}}if (num_0==0){printf("查无此人,请重新输入要修改的学号!\n");goto p1;}//从屏幕获取新的数据printf("请输入学号:\n");scanf("%d",&student[i].no);printf("请输入姓名:\n");getchar();scanf("%s",student[i].name);getchar();printf("请输入班级:\n");scanf("%d",&student[i].class);printf("请输入成绩:\n");scanf("%f",&student[i].score); }
//删除学生信息
void Student_Del()
{int num,i;int num_0=0;//设置查询标志位,没找到0,找到1printf("正在执行删除学生信息操作……\n");
p1:printf("请输入您要删除的学号:\n");scanf("%d",&num);for (i = 0; i < STUDENT_NUM; i++){if (num!=student[i].no)//没找到{continue;num_0=0;}else if (student[i].no==num){num_0=1;student[i].no=-1;printf("删除成功!\n");}}if (num_0==0){printf("查无此人,请重新输入要删除的学号!\n");goto p1;}
}
//查询学生信息
void Student_Find()
{int i,num;int num_0=0;//设置查询标志位,没找到0,找到1printf("正在执行查询学生信息操作……\n");
p1:printf("请输入您要查询的学号:\n");scanf("%d",&num);for (i = 0; i < STUDENT_NUM; i++){if (num!=student[i].no){num_0=0;continue;}else if (student[i].no==num){num_0=1;break;}}if (num_0==0){printf("查无此人,请重新输入要查询的学号!\n");goto p1;}printf("学号\t姓名\t班级\t成绩\n");printf("%d\t",student[i].no);printf("%s\t",student[i].name);printf("%d\t",student[i].class);printf("%.2f\n",student[i].score);}
//对学生信息排序
void Student_Sort()
{int num2;num2=SortMenu();int num_0;//判断是否有学生信息,有则打印,for (int i = 0; i <STUDENT_NUM; i++){if (student[i].no==-1){num_0=0;continue;}else{num_0=1;break;}}if (num_0==0){printf("没有学生信息,无法排序打印!\n");}//选择排序方式if (num2==1){SortNo();}else if (num2==2){SortScore();}
}
//学生学号排序
void SortNo()
{int i,j;printf("正在按照学号排序\n");struct Student temp;for ( i = 0; i < STUDENT_NUM; i++){for (j = 0; j <STUDENT_NUM-i-1; j++){if (student[j].no>student[j+1].no){temp=student[j];student[j]=student[j+1];student[j+1]=temp;}}}Student_Printf(); 
}
//学生成绩排序
void SortScore()
{int i,j;printf("正在按照成绩排序\n");struct Student temp;for ( i = 0; i < STUDENT_NUM; i++){for (j = 0; j <STUDENT_NUM-i-1; j++){if (student[j].score<student[j+1].score){temp=student[j];student[j]=student[j+1];student[j+1]=temp;}}}Student_Printf(); }
//打印所有学生信息
void Student_Printf()
{printf("学号\t姓名\t班级\t成绩\n");for (int i = 0; i < STUDENT_NUM; i++){if (student[i].no!=-1){printf("%d\t",student[i].no);printf("%s\t",student[i].name);printf("%d\t",student[i].class);printf("%.2f\n",student[i].score);}}}

五、演示视频

由于之前我不知道数字时钟上传后友友们下载是要vip的,所以为了方便友友们,我将实现视频放在文章中如下:

数组学生管理系统

http://www.dt0577.cn/news/46883.html

相关文章:

  • 别人帮做的网站怎么修改病句软文推广案例
  • 哈尔滨模板建站推荐24小时自助下单平台网站便宜
  • dz论坛如何做网站地图seo搜索排名影响因素主要有
  • 昆明网站搭建多少钱深圳网络推广外包公司
  • 网站证书打印格式不正确网站建设推广服务
  • 北京城乡建设部网站医院线上预约
  • 郑州住房和城乡建设局网站站长工具怎么关掉
  • ps联盟网站北京疫情最新情况
  • wordpress文章导入插件seo博客网址
  • 衡水网站建设公司网上营销培训课程
  • 萍乡企业做网站沈阳网页建站模板
  • 设计案例网站windows优化大师卸载不了
  • 快速增加网站权重网站制作河南
  • 湖州做网站优化巨量广告投放平台
  • 企业cms免费模板网站优化有哪些类型
  • 做发帖的网站代码广西疫情最新消息
  • 动态网站背景做多少合适网址申请注册
  • 网站没有备案 合法吗曲靖seo
  • 河北手动网站建设商店人民日报客户端
  • php 自动做网站点击量成都seo公司
  • 建一个b2c网站要多少钱查看域名每日ip访问量
  • 旅游网站排名查询长春网站建设解决方案
  • 济南多语言网站建设百度页面
  • 幕墙装饰工程网站模板电商关键词查询工具
  • 聊城网站制作网络营销人员招聘
  • 企业做营销型网站短视频培训机构
  • 网站html模板免费下载全媒体运营师报名费多少钱
  • 湖南常德文理学院霸屏seo服务
  • 江苏做网站找谁com域名注册
  • 哪个网站做简历免费seo免费优化网站