题目要求:

学生信息管理系统
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语言练习-学生信息管理系统的更多相关文章

  1. C语言版本学生信息管理系统

    仍然有一些小bug,后续会发布OC完善版的图书馆管理系统,欢迎批评指正. #include <stdio.h> void menu_choose(); typedef struct { i ...

  2. 【转载】C语言综合实验1—学生信息管理系统

    http://www.cnblogs.com/Anker/archive/2013/05/06/3063436.html 实验题目:学生信息管理系统 实验要求:用户可以选择1-7可以分别进行学生信息的 ...

  3. 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 ...

  4. 大一C语言结课设计之《学生信息管理系统》

    第一次写这么长的程序,代码仅供參考,有问题请留言. /* ** 学生信息管理系统 ** IDE:Dev-Cpp 4.9.9.2 ** 2014-6-15 */ #include <stdio.h ...

  5. 学生信息管理系统(c语言)

    ①注意: 程序中使用了sleep()函数.system()函数 关于 sleep() 函数 sleep() 函数的头文件和用法会因环境的不同而有所不同. 具体见-sleep()函数功能及用法 关于sy ...

  6. 学生信息管理系统(C语言)

    #include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct student ...

  7. 基于数组或链表的学生信息管理系统(小学期C语言程序实训)

    1.基于数组的学生信息管理系统 实验内容: 编写并调试程序,实现学校各专业班级学生信息的管理.定义学生信息的结构体类型,包括:学号.姓名.专业.班级.3门成绩. 实验要求: (1) main函数:以菜 ...

  8. 【Python3.6+Django2.0+Xadmin2.0系列教程之二】学生信息管理系统(入门篇)

    上一篇我们已经创建好了一个Xadmin的基础项目,现在我们将在此基础上构建一个同样很基础的学生信息管理系统. 一.创建模型 模型是表示我们的数据库表或集合类,并且其中所述类的每个属性是表或集合的字段, ...

  9. C语言实现---学生成绩管理系统

    C语言实现了学生成绩管理系统,可以进行学生成绩的增加,删除,更新,查询,计算和展示. 完整代码如下: #include<stdio.h> #include<stdlib.h> ...

随机推荐

  1. 一个非常不错的gridview 风格

    <style type="text/css"> <!-- .datable {background-color: #9FD6FF; color:#333333;  ...

  2. 关于访问MSMQ远端私有队列的一点经验

    这里应该将私有队列称做"专用队列"好像更贴切一些了,O(∩_∩)O 可以访问远程主机的MSMQ的私有队列的,这个是毋庸置疑的,但需要说明的是不能通过代码创建私有队列,关于这一点,我 ...

  3. C#中简单的写日志的方法

    public static void WriteLog(string msg)        {            string appPath = AppDomain.CurrentDomain ...

  4. Huffman树与最优二叉树续

    OK,昨天我们对huffman数的基本知识,以及huffman树的创建做了一些简介,http://www.cnblogs.com/Frank-C/p/5017430.html 今天接着聊: huffm ...

  5. html转换为纯文本,支持撇号

    /// <summary> /// html转换为纯文本 /// </summary> /// <param name="source">< ...

  6. 【百度地图API】你看过房产地图吗?你知道房产标注是如何建立的吗?

    原文:[百度地图API]你看过房产地图吗?你知道房产标注是如何建立的吗? 你是不是看过很多房产网站?例如安居客,新浪乐居. 你是不是也想做一个能写文字的标注? 你知道怎么去实现麼? 其实,上图这样的标 ...

  7. php传引用和全局变量

    原文:php传引用和全局变量 <?php /* * 函数内部改变变量的值两种方法 */ $a = 10; /* *方法一 :函数参数传引用 */ function methodOne(& ...

  8. 专访雷水果国:离1.5K至18K 一个程序猿5每年的成长之路

    我只是一个小菜鸟,对于自主学习和交流PHP(jquery,linux,lamp,shell,javascript,server)等一系列的知识.小菜鸟创建了一个群.希望光临本博客的人能够进来交流. 寻 ...

  9. hdu - 3049 - Data Processing(乘法逆元)

    题意:N(N<=40000)个数n1, n2, ..., nN (ni<=N),求(2 ^ n1 + 2 ^ n2 + ... + 2 ^nN) / N % 1000003. 题目链接:h ...

  10. C#实现Web文件上传的两种方法

    1. C#实现Web文件的上传 在Web编程中,我们常需要把一些本地文件上传到Web服务器上,上传后,用户可以通过浏览器方便地浏览这些文件,应用十分广泛. 那么使用C#如何实现文件上传的功能呢?下面笔 ...