学生管理系统的C语言实现 数据结构、结构体、函数封装_c语言学生社团管理系统

    printf(">>>请输入命令:");
    scanf("%s", &b);
    getchar();
    switch (b)
    {
    case 'H':
        Help();
        break;

    case 'T': //录入
        if (k <= 20)
        {
            printf("请输入增添人数:");
            scanf("%d", &rs);
            getchar();
            Type(p, rs, &k);
            printf("******************************************\n");
            printf("%d", k);
            break;
        }
        else
        {
            puts("数据已满!请联系管理员。");
            printf("******************************************\n");
            continue;
        }
    case 'A': //平均
        if (k == 0)
        {
            puts("数据为空,请先执行命令 T,输入数据");
            printf("******************************************\n");
            continue;
        }
        else
        {
            Average(p, k);
            printf("******************************************\n");
            continue;
        }
        break;

    case 'L': //列出
        if (k == 0)
        {
            puts("数据为空,请先执行命令 T,输入数据");
            printf("******************************************\n");
            continue;
        }
        else
        {
            List(p, k);
            printf("******************************************\n");
            continue;
        }
        break;

    case 'P': //排序
        if (k == 0)
        {
            puts("数据为空,请先执行命令 T,输入数据");
            printf("******************************************\n");
            continue;
        }
        else
        {
            Sort(k);
            printf("******************************************\n");
            continue;
        }
        break;

    case 'S': //查询
        if (k == 0)
        {
            puts("数据为空,请先执行命令 T,输入数据");
            printf("******************************************\n");
            continue;
        }
        else
        {
            printf("请输入要查询的学号:");

            scanf("%d", &x);
            getchar();
            search(p, k, x);
            printf("******************************************\n");
            continue;
        }
        break;

    case 'C': //清屏
        clear();
        break;
    case 'Q': //退出
        Quit();
    default:
        puts("输入有误!请重新输入。");
        printf("******************************************\n");
        break;
    }
}

return 0;

}

//HELP//
void Help()
{
puts(““);
puts(”
学生成绩管理系统————帮助菜单 “);
puts(”
”);
puts(“* H >> 显示帮助菜单 “);
puts(”
T >> 成 绩 录 入 “);
puts(”
A >> 计算学生平均分 “);
puts(”
L >> 列出成绩单 “);
puts(”
P >> 按平均成绩由高到低排序 “);
puts(”
S >> 按学号查询学生成绩 “);
puts(”
C >> 清屏 “);
puts(”
Q >> 退出系统 “);
puts(”
“);
puts(”
Copyright 2023.03.11 By 于雪杰 “);
puts(”
*”);
}
//TYPE//
void Type(struct stu_cj *p, int rs, int *k)
{
int m = 1;

for (i = 0; i < rs; i++)
{
    int t=*k;
    (p + t)->stu_xh = t + 1;
    (p + t)->pj_cj = 0;
    puts("学号 语文 数学 外语");
    printf("%d", (p + t)->stu_xh);
    scanf("%d %d %d", &(p + t)->yw_cj, &(p + t)->sx_cj, &(p + t)->wy_cj);
    (*k) += m;
}
printf("******************************************\n");
printf("已成功输入%d人成绩\n", *k);

}
void Average(struct stu_cj *p, int k)
{
for (i = 0; i < k; i++)
{
(p + i)->pj_cj = ((p + i)->yw_cj + (p + i)->wy_cj + (p + i)->sx_cj) / 3;
}
}

LIST///

void List(struct stu_cj *p, int k)
{
puts(“学号 语文 数学 外语 平均分”);
for (i = 0; i < k; i++)
{
printf(“%d %d %d %d %d\n”, (p + i)->stu_xh, (p + i)->yw_cj, (p + i)->sx_cj, (p + i)->wy_cj, (p + i)->pj_cj);
}
}
/SORT
void Sort( int k)
{
printf(“%d”, k);
for (i = 0; i < k; i++)
{
for (j=0; j < k-i ; j++)
{
struct stu_cj temp1 ={};
if ((p + j)->pj_cj < (p + j+1)->pj_cj)

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年嵌入式&物联网开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新!!

程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!**

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值