用函数写一个学生管理系统(输入成绩,查询成绩,计算平均分,打印所有同学成绩)

#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>

#define N 2//几个学生

#define M 4//几个科目

int Sum[M] = { 0,0 };

int a[N][M];

float f[N];

 

void printfcjlr()

{

 int i;

 int j;

 int sSum = 0;

 

 printf("欢迎进入成绩录入功能:\n");

 for (i = 1; i <= N; i++)

 {

  sSum = 0;

  for (j = 1; j <= M; j++)

  {

   printf("请输入第%d个同学的第%d门成绩:", i, j);

   scanf("%d", &a[i - 1][j - 1]);

   Sum[j - 1] = Sum[j - 1] + a[i - 1][j - 1];

   sSum = sSum + a[i - 1][j - 1];

  }

  f[i - 1] = 1.0 * sSum / M;

 }

 

}

void printfcjcx()

{

 int i;

 int j;

 printf("成绩查询\n");

 printf("请输入需要查询的学生序号:");

 scanf("%d", &i);

 if (i >= 1 && i <= N)

 {

  printf("序号\t");

  for (j = 1; j <= M; j++)

  {

   printf("第%d门\t", j);

  }

  printf("平均成绩\n");

  if (i >= 1 && i <= N)

  {

   printf("%d\t", i);

   for (j = 1; j <= M; j++)

   {

    printf("%d\t", a[i - 1][j - 1]);

   }

   printf("%.lf\n", f[i- 1]);

  }

  else

  {

   printf("不存在的");

  }

 }

}

void printfpjcj()

{

 int j;

 printf("计算平均成绩\n");

 for (j = 1; j <= M; j++)

 {

  printf("第%d门的平均成绩是%.1f\n", j, 1.0 * Sum[j - 1] / N);

 }

 

}

void printfzgf()

{

 int i;

 int j;

 printf("打印出所有同学的成绩:\n");

 printf("序号\t");

 for (j = 1; j <= M; j++)

 {

  printf("第%d门\t", j);

 }

 printf("平均成绩\n");

 for (i = 1; i <= N; i++)

 {

  printf("%d\t", i);

  for (j = 1; j <= M; j++)

  {

   printf("%d\t", a[i - 1][j - 1]);

  }

  printf("%.1f\n", f[i - 1]);

 }

}

 

 

int Max(int x, int y)

{

 if (x > y)

 {

  return x;

 }

 else

 {

  return y;

 }

}

void printfStar(int n)

{

 int i;

 for (i = 1; i <= n; i++)

 {

  printf("************************** \n");

 }

}

 

int main()

{

 int max = 0;

 int iment;

 printfStar(1);

 max = Max(9, 10);

 printf("欢迎进入学生成绩管理系统\n");

 printfStar(1);

 

 while (1)

 {

  printf("1、成绩录入\n");

  printf("2、成绩查询\n");

  printf("3、计算平均成绩\n");

  printf("4、打印出所有同学的成绩\n");

  printf("0、退出系统\n");

  printf("请输入菜单项(1-4):");

  scanf("%d", &iment);

 

 

  switch (iment)

  {

  case 1:printfcjlr(); break;

  case 2:printfcjcx(); break;

  case 3:printfpjcj(); break;

  case 4:printfzgf(); break;

  case 0:printf("退出系统\n"); break;

  default:printf("不存在的菜单项\n"); break;

 

  }

  if (iment == 0)

  {

   break;

  }

 }

 return 0;

 

}

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,下面是一个简单的学生成绩管理系统函数实现: ```python def add_student_score(scores_dict, name, score): """ 添加学生成绩 :param scores_dict: 学生成绩字典 :param name: 学生姓名 :param score: 学生成绩 """ if name in scores_dict: scores_dict[name].append(score) else: scores_dict[name] = [score] def get_student_average_score(scores_dict, name): """ 获取学生平均分 :param scores_dict: 学生成绩字典 :param name: 学生姓名 :return: 学生平均分 """ if name in scores_dict: scores = scores_dict[name] return sum(scores) / len(scores) else: return None def print_scores(scores_dict): """ 打印所有学生成绩 :param scores_dict: 学生成绩字典 """ for name, scores in scores_dict.items(): avg_score = sum(scores) / len(scores) print(f"{name}: {scores}, 平均分: {avg_score}") ``` 这些函数实现了学生成绩的添加、查询打印功能。我们可以使用一个字典来保存学生的姓名和成绩,如下所示: ```python scores_dict = { "Tom": [80, 75, 90], "Jerry": [85, 90, 95], "Alice": [90, 85, 95] } ``` 然后可以通过调用上述函数来进行学生成绩管理,例如: ```python # 添加学生成绩 add_student_score(scores_dict, "Tom", 85) add_student_score(scores_dict, "Alice", 80) # 查询学生平均分 avg_score = get_student_average_score(scores_dict, "Tom") print(f"Tom的平均分为: {avg_score}") # 打印所有学生成绩 print_scores(scores_dict) ``` 输出结果如下: ``` Tom的平均分为: 82.5 Tom: [80, 75, 90, 85], 平均分: 82.5 Jerry: [85, 90, 95], 平均分: 90.0 Alice: [90, 85, 95, 80], 平均分: 87.5 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值