记录一个班级的成绩练习一维数组

直接上代码,mark一下:嘿嘿

#include <stdio.h>

/**
 * 记录并统计一个班的学生的成绩来
 * 练习一维数组的使用
 */
int main(void)
{
    int count;

    printf("How many students are in your class?\n");
    scanf("%d",&count);  //获取班级中学生的数量

    /**
     * 我在书中看的说是不允许变量赋值来这,但是
     * 在我的尝试中是可以的,不知道怎么回事。
     */
    int numbers[count],chinese[count],maths[count],eng[count];

    puts("Please input the StudentID and three scores:\n");
    printf("      studentID Chinese Math English\n");

    int i = 0;
    /**
     * 接受用户的成绩输入
     */
    for(i = 0;i < count;i++){
        printf("No.%d>",i+1);
        scanf("%d %d %d %d",&numbers[i],&chinese[i],&maths[i],&eng[i]);
    }

    /**
     * 输入完毕之后,输出用户的成绩及其平均成绩
     */
    printf("ID  CH  MA  EN  AVE\n");
    printf("--------------------------\n");

    int j;
    for(j = 0;j < count;j++){
        float ave = (chinese[j] + maths[j] + eng[j])/3;  //求出平均成绩
        printf("%d\t%d\t%d\t%d\t%f\n",numbers[j],chinese[j],maths[j],eng[j],ave);
    }

    /**
     * 循环求出各科的总成绩
     */
    float ave_chinese = 0,ave_math= 0 ,ave_english = 0;
    int m;
    for(m = 0;m < count;m++){
        ave_chinese += chinese[m];
        ave_math += maths[m];
        ave_english += eng[m];
    }

    //输出平均成绩
    printf("The Average of Chinese in this class is %f\n",ave_chinese/count);
    printf("The Average of math in this class is %f\n",ave_math/count);
    printf("The Average of english in this class is %f\n",ave_english/count);

    return 0;
}

下面是我的程序的运行结果:

时间: 2024-10-07 01:41:52

记录一个班级的成绩练习一维数组的相关文章

python 对入参文本进行预处理成以一个空格为间隔的一维数组

#!/usr/bin/python import re def pre_process_msg ( msgIn ): if msgIn=="": return "msgIn_Input_Error,should'nt Null, it is Strings" else: #1 trim msg = msgIn msg = msg.strip() #2 process msg internal special char replace with " &quo

一维数组对象转成二维数组

一.关于PHP把装着item为对象的一维数组转成二维数组的疑问 背景:新增帖子的时候,选择标签时,可以选择多个,后端接口是需要传入的是一个二维数组. /** * @Title 修改精选内容 * @Params $id 记录ID * @Params $tags 标签组 array( * array( * 'name' => '桌面文化', * 'tag_id' => '2' * ) */ public function update($id = 0,$tags = array()) 困惑:后端接

【图文+视频新手也友好】Java一维数组详细讲解(内含练习题答案+详解彩蛋喔~)

目录 视频讲解: 一.数组的概述 二.一维数组的使用 三.Arrays工具类中的sort方法(sort方法用的多,我们具体讲一下) 四.数组中的常见异常 五.一维数组练习题 六.彩蛋(本期视频使用的PPT+[练习题(带答案和详解)]) [新手友好型视频]全面讲解Java一维数组(内含带答案和讲解的练习题彩蛋喔)看完即上手!更有详解版练习题来帮你加深印象~~ 视频讲解: 点击这里即可到小乔的B站观看 一.数组的概述 数组(Array),是存储一系列同类型数据元素的一种数据结构.它通过数组名和一个整

指针与一维数组和二维数组以及字符串指针数组的学习笔记

废话不多少,直接上代码,关键的东西已经注释了,看注释信息理解即可. 说明:本程序讨论了一维数组和指针的关系,谈论了二维数组和指针之间的关系,讨论了字符串数组指针数组和指针之间的关系,代码中以给出定义的方法和简单的使用,但是有些使用方法并没有列出,如果需要, 请自行加入printf调试即可. 转贴请注明出处,欢迎和我讨论,谢谢. ----------cofin_add #include <stdio.h> void fun(int m, char *((*p)[m])){ int i = 0;

求首位相连一维数组最大子数组的和

结对成员: 朱少辉:主要负责代码编写 侯涛亮:主要负责程序测试 题目:一个首尾相接的一维整型数组,其中有正有负,求它的最大子数组并返回它的位置. 思路:在求一维子数组的基础上,先输入一个含有N个数的一维数组,将此数组向后平移N个使数组长度变为2N个,前N个和后N个值相等.再求这长度为2N的数组最大子数组之和,也就是求从第i个(i=0,1,2..n-1)到第i+n(不包含i+n)个中求最大的子数组和.这样会从0-N-1产生产生N个最大子数组的和,把这N个值存到另个数组中,求出最大值即为首位衔接一维

输入6个人的成绩放入到一个一维数组中,然后打印出平均分,最后按成绩 从大到小打印。三个功能(输入是一个函数,求平均分是一个函数,排序是一个 函数)都用函数实现,最后在main方法中调用。

/*5.输入6个人的成绩放入到一个一维数组中,然后打印出平均分,最后按成绩从大到小打印.三个功能(输入是一个函数,求平均分是一个函数,排序是一个函数)都用函数实现,最后在main方法中调用.*/ #include <stdio.h> int inputScore(){ int score; scanf("%d",&score); return score;} double avg(int scores[],int length){ int i,score = 0;

java记录一维数组中多个相同值出现的位置下标

问题描述: 我需要在一个整数型一维数组中,找出相同数字出现的位置下标并记录. 例如: int[] test={3,3,1,1,2,5,1} 最终需要得到的是(数字-->出现的位置下标): 3 -->[0,1] 1 -->[2,3,6] 2 -->[4] 5 -->[5] 接下来通过代码实现我想要的功能,如下: package Test; import java.util.ArrayList; import java.util.LinkedHashMap; import jav

编程题:已知一个一维数组a[10]中有10个数,求出第m个数到第n个数的和。其中m、n由键盘输入。

#include<stdio.h> int sum(int *q,int n) { int i,s=0; for(i=0;i<n;i++,q++) s+=*q; return s; } void main() { int n,m,a[10]={1,2,3,4,5,6,7,8,9,10}; int *p; printf("Please input m and n(m<n<10):\n"); scanf("%d,%d",&m,&am

编程题:指针变量,实参与形参的引用。已知一个一维数组,求其中前n个数的和。n由键盘输入。

#include<stdio.h> int sum(int *q,int n) { int i,s=0; for(i=0;i<n;i++,q++) s+=*q; return s; } void main() { int num,a[10]={1,2,3,4,5,6,7,8,9,10}; int *p=a; scanf("%d",&num); printf("%d\n",sum(p,num)); } 编程题:指针变量,实参与形参的引用.已知