C语言小练习三
题目要求:
定义一个二维数组保存 10个学生的5门课成绩,分别用函数实现:
(1)input():输入每个学生的成绩;
(2)output():输出每个学生的成绩;
(3)aver_stu():计算并输出每个学生的平均分;
(4)aver_cour():计算并输出每门课的平均分;
(5)highest():找出最高分数所对应的学生和课程。
程序运行时要求先在屏幕显示菜单,输入选择后分别调用对应的函数完成所选操作。
程序源码:
#include <stdio.h> int array[][]; void input(void);
void output(void);
void aver_stu(void);
void aver_cour(void);
void highest(void); int main(void)
{
int n; input(); printf("请输入您要执行的选项:\n\
.输出每个学生的成绩;\n\
.输出每个学生的平均分:\n\
.输出每门课程的平均分:\n\
.找出最高分数所对应的的学生和课程\n"); scanf("%d", &n); switch(n)
{
case : output(); break;
case : aver_stu(); break;
case : aver_cour(); break;
case : highest(); break;
} return ;
} void input(void)
{
int i, j; for(i = ; i < ; i++)
{
printf("请输入学生%d的成绩:", i + ); for(j = ; j < ; j++)
{
scanf("%d", &array[i][j]);
}
}
} void output(void)
{
int i, j; for(i = ; i < ; i++)
{
for(j = ; j < ; j++)
{
printf("%d ", array[i][j]);
}
printf("\n");
}
} void aver_stu(void)
{
int sum[] = { };
double aver[];
int i, j; for(i = ; i < ; i++)
{
for(j = ; j < ; j++)
{
sum[i] += array[i][j];
}
aver[i] = sum[i] / ;
printf("学生%d的平均分为:%lf\n", i, aver[i]);
}
} void aver_cour(void)
{
int i, j;
int sum[];
double aver[]; for(j = ; j < ; j++)
{
for(i = ; i < ; i++)
{
sum[j] += array[i][j];
}
aver[j] = sum[j] / ;
printf("课程%d的平均分为:%lf\n", j, aver[j]);
}
} void highest(void)
{
int i, j;
int ii, jj;
int max = array[][]; for(i = ; i < ; i++)
{
for(j = ; j < ; j++)
{
if(max < array[i][j])
{
max = array[i][j];
ii = i;
jj = j;
}
}
}
printf("学生%d的课程%d得分最高,最高分为%d\n", ii, jj, max);
}
C语言小练习三的更多相关文章
- 通过反汇编C语言小程序学习Liunx汇编语言
大家好! 我是来自山东师范大学的吴乐. 今天在<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 ...
- 【C语言探索之旅】 第一部分第八课:第一个C语言小游戏
内容简介 1.课程大纲 2.第一部分第八课:第一个C语言小游戏 3.第一部分第九课预告: 函数 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案.还会带大家用C语言编写 ...
- Linux下简单C语言小程序的反汇编分析
韩洋原创作品转载请注明出处<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 写在开始,本文为因为参加MOO ...
- C语言小程序——推箱子(窄字符和宽字符)
C语言小程序——推箱子(窄字符Version) 推箱子.c #include <stdio.h> #include <conio.h> #include <stdlib. ...
- 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 ...
- 012-C语言小游戏之推箱子
012-C语言小游戏之推箱子 一.创建游戏地图 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #define ROWS 11 #define COLS 12 char ...
- 你想了解的《javaScript语言精粹》(三)
# javaScript语言精粹 # 第三章 对象 - javaScript 数据类型 1. 基础数据类型 Number String Boolean Undefined N ...
- 数据结构与算法分析——C语言描述 第三章的单链表
数据结构与算法分析--C语言描述 第三章的单链表 很基础的东西.走一遍流程.有人说学编程最简单最笨的方法就是把书上的代码敲一遍.这个我是头文件是照抄的..c源文件自己实现. list.h typede ...
- 狗屁不通的“视频专辑:零基础学习C语言(小甲鱼版)”(2)
前文链接:狗屁不通的“视频专辑:零基础学习C语言(小甲鱼版)”(1) 小甲鱼在很多情况下是跟着谭浩强鹦鹉学舌,所以谭浩强书中的很多错误他又重复了一次.这样,加上他自己的错误,错谬之处难以胜数. 由于拙 ...
随机推荐
- 第十八周个人作业--The Final
项目计划 完成这个项目需要的时间:5-7天项目开发 需求分析: 作为一名排球赛事管理者,我希望能够根据比赛查询每场比赛的结果,以便于确定每支球队的比赛名次. 设计文档 由排球比赛用 ...
- cf727e
题意:给你一个模式串和一堆长度相同的不相同的匹配串,问是否有一个方案可以让这个模式串由这些匹配串首尾相连组成,每个串只能出现一次. 思路:还是比较简单的,显然模式串每个位置最多匹配一个匹配串,因为所有 ...
- error-2016-2-15
错误:该请求包含双重转义序列,而 Web 服务器上配置的请求筛选拒绝双重转义序列原因:一些URL中可能会包含+号等符号,然后IIS7以上的版本会默认拒绝请求此URL,需要进行如下的修改. 解决PHP中 ...
- 修改maven默认的JDK编译版本
1.全局模式(settings.xml) <profiles> <profile> <id>jdk-1.8</id> <activation> ...
- NSURLCache详解和使用
使用缓存的目的是为了使应用程序能更快速的响应用户输入,是程序高效的运行.有时候我们需要将远程web服务器获取的数据缓存起来,以空间换取时间,减少对同一个url多次请求,减轻服务器的压力,优化客户端网络 ...
- EF外键关联
客户里面存在客服外键 基类模型 public class ModelBase { public ModelBase() { CreateTime = DateTime.Now; } [Key] pub ...
- LeetCode OJ 114. Flatten Binary Tree to Linked List
Given a binary tree, flatten it to a linked list in-place. For example,Given 1 / \ 2 5 / \ \ 3 4 6 T ...
- 事务BEGIN TRANSACTION
事务(Transaction)是并发控制的基本单位.所谓的事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位.例如,银行转账工作:从一个账号扣款并使另一个账号增款,这 ...
- 如何:对 Windows 窗体控件进行线程安全调用
http://msdn.microsoft.com/zh-cn/library/ms171728(VS.90).aspx http://msdn.microsoft.com/zh-cn/library ...
- CODE[VS] 1230 元素查找
1.题目戳这里 2.代码: #include<iostream> #include<algorithm> using namespace std; int n,m,a[1000 ...