C语言练习-学生信息管理系统
题目要求:
学生信息管理系统
struct studentInfo
{
int id;
char name[128];
int age;
char sex;
int c_score;
int cpp_score;
int oc_scpre;
};
struct StudentInfo Arr[100]={};
int count=0;
show
1. 插入用户信息
scnaf("%s%d", Arr[count].age);
count++;
2. 显示用户信息
(1)输入id,按id显示信息
(2)输入name,按name显示信息
3. 显示所有用户信息
4. 删除用户信息
(1)输入id,按id删除信息
(2)输入name,按name删除信息
5. 统计
c-score 平均值
cpp-score-平均值
oc-score平均值
平均值成绩最高分
input: 1-6
switch()
{
}
我的代码:
#include <stdio.h>
#include <string.h>
typedef struct studentInfo{
int id;
char name[128];
int age;
char sex;
int c_score;
int cpp_score;
int oc_score;
}Student;
Student student[1000];
int pos; void print_info(int p){
printf("%d\t%s\t%d\t%c\t%d\t%d\t%d\n",
student[p].id, student[p].name, student[p].age, student[p].sex,
student[p].c_score, student[p].cpp_score, student[p].oc_score);
} void input();
void show(){
printf("\n\n\n");
printf("-----------------管理信息系统---------------------------\n");
printf("| |\n");
printf("| |\n");
printf("| 1.插入用户信息 |\n");
printf("| 2.显示用户信息 |\n");
printf("| 3.显示所有用户信息 |\n");
printf("| 4.删除用户信息 |\n");
printf("| 5.统计信息 |\n");
printf("| 6.退出系统 |\n");
printf("| |\n");
printf("--------------------------------------------------------|\n");
printf("请输入数字:(1-6)\n");
input();
} void insert(){
char name[128];
int i = 0;
++pos;
printf("Please input user id :\n");
scanf("%d", &student[pos].id);
printf("Please input user name :\n");
scanf("%s", name);
strcpy(student[pos].name, name);
printf("Please input user age :\n");
scanf("%d", &student[pos].age);
printf("Please input user sex :\n");
scanf(" %c", &student[pos].sex);
printf("Please input user C语言分数 :\n");
scanf("%d", &student[pos].c_score);
printf("Please input user C++分数 :\n");
scanf("%d", &student[pos].cpp_score);
printf("Please input user objective-c 分数 :\n");
scanf("%d", &student[pos].oc_score);
printf("插入成功!\n");
show();
} void showuser(){
printf("1>输入id, 按ID显示信息\n");
printf("2>输入name, 按name显示信息\n");
printf("请输入序号:(1-2)\n");
int i, id, num;
char name[128];
scanf("%d", &num);
if(num == 1){
printf("请输出ID:\n");
scanf("%d", &id);
for(i=1;i<=pos;++i)
if(id == student[i].id){
printf("ID\t名字\t年龄\t性别\tC\tC++\tOC\n");
print_info(i);
}
}
if(num == 2){
printf("请输入用户名字:\n");
scanf("%s", name);
for(i=1;i<=pos;++i)
if(!strcmp(name, student[i].name)){
printf("ID\t名字\t年龄\t性别\tC\tC++\tOC\n");
print_info(i);
}
}
printf("按任意键返回菜单\n");
getchar();
getchar();
show();
} void showalluser(){
int i = 0;
printf("ID\t名字\t年龄\t性别\tC\tC++\tOC\n");
for(i=1;i<=pos;++i){
if(student[i].id == 0) continue;
print_info(i);
}
show();
} void delete(){
printf("1>输入id, 按ID删除信息\n");
printf("2>输入name, 按name删除信息\n");
printf("请输入序号:(1-2)\n");
int i, id, num;
char name[128];
scanf("%d", &num);
if(num == 1){
printf("请输入ID\n");
scanf("%d", &id);
for(i=1;i<=pos;++i)
if(id == student[i].id){
student[i].id = 0;
printf("删除成功!\n");
}
}
if(num == 2){
printf("请输入用户名字:\n");
scanf("%s", name);
for(i=1;i<=pos;++i)
if(!strcmp(name, student[i].name)){
student[i].id = 0;
printf("删除成功!\n");
}
}
show();
} void sum(){
printf("1>输入C语言分数的平均值信息\n");
printf("2>输入C++语言分数的平均值信息\n");
printf("3>输入objective-C语言分数的平均值信息\n");
printf("请输入序号:(1-3)\n");
int num, i, sum, cnt;
scanf("%d", &num);
if(num == 1){
cnt = 0;
sum = 0;
for(i=1;i<=pos;++i){
if(student[i].id == 0) continue;
cnt++;
sum+=student[i].c_score;
}
printf("C语言评分分数 :%g\n", sum/(cnt*1.0));
}
if(num == 2){
cnt = 0;
sum = 0;
for(i=1;i<=pos;++i){
if(student[i].id == 0) continue;
cnt++;
sum+=student[i].cpp_score;
}
printf("C++语言评分分数 :%g\n", sum/(cnt*1.0));
}
if(num == 3){
cnt = 0;
sum = 0;
for(i=1;i<=pos;++i){
if(student[i].id == 0) continue;
cnt++;
sum+=student[i].oc_score;
}
printf("objective-C语言评分分数 :%g\n", sum/(cnt*1.0));
}
if(num == 4){
cnt = 0;
sum = 0;
for(i=1;i<=pos;++i){
if(student[i].id == 0) continue;
cnt++;
sum+=student[i].oc_score;
}
printf("objective-C语言评分分数 :%f\n", sum/(cnt*1.0));
}
show();
} void _quit(){} void input(){
int num;
scanf("%d", &num);
switch(num){
case 1: insert();
break;
case 2: showuser();
break;
case 3: showalluser();
break;
case 4: delete();
break;
case 5: sum();
break;
case 6: _quit();
break;
}
} int main(){
pos = 0;
show();
return 0;
}
运行结果 截图:

C语言练习-学生信息管理系统的更多相关文章
- C语言版本学生信息管理系统
仍然有一些小bug,后续会发布OC完善版的图书馆管理系统,欢迎批评指正. #include <stdio.h> void menu_choose(); typedef struct { i ...
- 【转载】C语言综合实验1—学生信息管理系统
http://www.cnblogs.com/Anker/archive/2013/05/06/3063436.html 实验题目:学生信息管理系统 实验要求:用户可以选择1-7可以分别进行学生信息的 ...
- C语言小练习之学生信息管理系统
C语言小练习之学生信息管理系统 main.c文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 2 ...
- 大一C语言结课设计之《学生信息管理系统》
第一次写这么长的程序,代码仅供參考,有问题请留言. /* ** 学生信息管理系统 ** IDE:Dev-Cpp 4.9.9.2 ** 2014-6-15 */ #include <stdio.h ...
- 学生信息管理系统(c语言)
①注意: 程序中使用了sleep()函数.system()函数 关于 sleep() 函数 sleep() 函数的头文件和用法会因环境的不同而有所不同. 具体见-sleep()函数功能及用法 关于sy ...
- 学生信息管理系统(C语言)
#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct student ...
- 基于数组或链表的学生信息管理系统(小学期C语言程序实训)
1.基于数组的学生信息管理系统 实验内容: 编写并调试程序,实现学校各专业班级学生信息的管理.定义学生信息的结构体类型,包括:学号.姓名.专业.班级.3门成绩. 实验要求: (1) main函数:以菜 ...
- 【Python3.6+Django2.0+Xadmin2.0系列教程之二】学生信息管理系统(入门篇)
上一篇我们已经创建好了一个Xadmin的基础项目,现在我们将在此基础上构建一个同样很基础的学生信息管理系统. 一.创建模型 模型是表示我们的数据库表或集合类,并且其中所述类的每个属性是表或集合的字段, ...
- C语言实现---学生成绩管理系统
C语言实现了学生成绩管理系统,可以进行学生成绩的增加,删除,更新,查询,计算和展示. 完整代码如下: #include<stdio.h> #include<stdlib.h> ...
随机推荐
- robot framework环境搭建(转)
一. robot framework环境搭建: 官网:http://robotframework.org/ 序号 安装包名 安装方法 下载地址 备注 1 python exe文件,直接双击安装 htt ...
- 十天学Linux内核之第一天---内核探索工具类
原文:十天学Linux内核之第一天---内核探索工具类 寒假闲下来了,可以尽情的做自己喜欢的事情,专心待在实验室里燥起来了,因为大二的时候接触过Linux,只是关于内核方面确实是不好懂,所以十天的时间 ...
- Web采矿技术
一.数据挖掘 数据挖掘是运用计算机及信息技术,从大量的.不全然的数据集中获取隐含在当中的实用知识的高级过程.Web 数据挖掘是从数据挖掘发展而来,是数据挖掘技术在Web 技术中的应用.Web 数据 ...
- hdu 1712 (分组背包入门)
http://acm.hdu.edu.cn/showproblem.php?pid=1712 问题 有N件物品和一个容量为V的背包.第i件物品的费用是c[i],价值是w[i].这些物品被划分为若干组, ...
- ReactJS-render
ReactJS分析之入口函数render ReactJS分析之入口函数render 前言 在使用React进行构建应用时,我们总会有一个步骤将组建或者虚拟DOM元素渲染到真实的DOM上,将任务交给 ...
- java_OutOfMorryError 内存溢出(replaceAll)
最近在使用string类中的replaceAll函数时碰到这个错误,由于string长度比较长,文本文档9M多,可以增加jvm的内存大小解决. 下面是一篇对OutOfMorryError错误的一些处理 ...
- iOS开发- "duplicate symbol for architecture i386" 解决的方法
今天整合项目的时候, 遇到了这样一个问题. duplicate symbol _flag in: /Users/apple/Library/Developer/Xcode/DerivedData/bl ...
- win7安装ruby on rails开发环境
前言 我们看到很多文章说ruby环境windows它是非常困难的基础上,这将是各种稀奇古怪的问题,因此,建议linux和mac发. 可是我依照教程搭了下,问题也不算太多.总过大概花费了2个半小时左右就 ...
- exit() _exit()
图 C程序的启动与终止 差别: _exit()函数:直接使进程停止执行,清除其使用的内存空间,并销毁其在内核中的各种数据结构; exit()函 数则在这些基础上作了一些包装,在运行退出之前加了若干道工 ...
- javascript如何解析json对javascript如何解析json对象并动态赋值到select列表象并动态赋值到select列表
原文 javascript如何解析json对象并动态赋值到select列表 JSON(JavaScriptObject Notation)一种简单的数据格式,比xml更轻巧.JSON是JavaScri ...