c语言从键盘输入10个学生的成绩,试统计出他们的成绩总和及平均值?

供稿:hz-xin.com     日期:2025-01-13
C语言编程,从键盘输入10个学生的成绩,试统计出他们的成绩总和及平均值,怎么操作?

#include

#define MAX 10

struct student {
char no[10];
char name[10];
float score[3];
}stu[MAX];

float ave_course[3] = {0};
float ave_student[MAX] = {0};

int max_ave_i = 0; // 存储平均分最高的学生索引
int max_course_i[3] = {0}; //存储单科分数,最高的学生索引

// 录入学生成绩
void input(int n) {
int i;
for(i=0; i<n; i++) {
scanf("%s %s", stu[i].no,stu[i].name);
scanf("%f %f %f", &stu[i].score[0], &stu[i].score[1], &stu[i].score[2]);
}
}

// 计算平均成绩
void average(int n){
int i,j;
float max_ave = 0.0f;
float max_course[3] = {0};

// 计算每门课的平均成绩
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
ave_course[j] += stu[i].score[j];

if(max_course[j]<stu[i].score[j]){
max_course[j]<stu[i].score[j];
max_course_i[j] = i;
}
}
}

for(j=0; j<3; j++) {
ave_course[j] /= n;
}

// 计算每个学生的平均成绩
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
ave_student[i] += stu[i].score[j];
}
ave_student[i] /= 3;
if(max_ave < ave_student[i]) {
max_ave = ave_student[i];
max_ave_i = i;
}
}
}

void main () {
int i,j;

printf("请输入学生的学号 姓名 语文 数学 英语");
input(MAX);

average(MAX);
printf("
课程的平均成绩是: %6.2f %6.2f %6.2f
",ave_course[0],ave_course[1],ave_course[2]);

printf("
学生的平均成绩是:
");
for(i=0; i<MAX; i++) {
printf(" %s %s %6.2f
", stu[i].no, stu[i].name, ave_student[i]);
}

printf("平均分,最高的学生:
");
printf(" 学号=%s, 姓名=%s, 平均分=%6.2f:
", stu[max_ave_i].no, stu[max_ave_i].name, ave_student[max_ave_i]);

printf("语文,最高分的学生:
");
i=max_course_i[0];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:
", stu[i].no, stu[i].name, stu[i].score[0]);

printf("数学,最高分的学生:
");
i=max_course_i[1];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:
", stu[i].no, stu[i].name, stu[i].score[1]);

printf("英语,最高分的学生:
");
i=max_course_i[2];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:
", stu[i].no, stu[i].name, stu[i].score[2]);

getchar();
getchar();
}

#include

#define MAX 10

struct student {
char no[10];
char name[10];
float score[3];
}stu[MAX];

float ave_course[3] = {0};
float ave_student[MAX] = {0};

int max_ave_i = 0; // 存储平均分最高的学生索引
int max_course_i[3] = {0}; //存储单科分数,最高的学生索引

// 录入学生成绩
void input(int n) {
int i;
for(i=0; i<n; i++) {
scanf("%s %s", stu[i].no,stu[i].name);
scanf("%f %f %f", &stu[i].score[0], &stu[i].score[1], &stu[i].score[2]);
}
}

// 计算平均成绩
void average(int n){
int i,j;
float max_ave = 0.0f;
float max_course[3] = {0};

// 计算每门课的平均成绩
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
ave_course[j] += stu[i].score[j];

if(max_course[j]<stu[i].score[j]){
max_course[j]<stu[i].score[j];
max_course_i[j] = i;
}
}
}

for(j=0; j<3; j++) {
ave_course[j] /= n;
}

// 计算每个学生的平均成绩
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
ave_student[i] += stu[i].score[j];
}
ave_student[i] /= 3;
if(max_ave < ave_student[i]) {
max_ave = ave_student[i];
max_ave_i = i;
}
}
}


void main () {
int i,j;

printf("请输入学生的学号 姓名 语文 数学 英语");
input(MAX);

average(MAX);
printf("
课程的平均成绩是: %6.2f %6.2f %6.2f
",ave_course[0],ave_course[1],ave_course[2]);

printf("
学生的平均成绩是:
");
for(i=0; i<MAX; i++) {
printf(" %s %s %6.2f
", stu[i].no, stu[i].name, ave_student[i]);
}

printf("平均分,最高的学生:
");
printf(" 学号=%s, 姓名=%s, 平均分=%6.2f:
", stu[max_ave_i].no, stu[max_ave_i].name, ave_student[max_ave_i]);

printf("语文,最高分的学生:
");
i=max_course_i[0];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:
", stu[i].no, stu[i].name, stu[i].score[0]);

printf("数学,最高分的学生:
");
i=max_course_i[1];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:
", stu[i].no, stu[i].name, stu[i].score[1]);

printf("英语,最高分的学生:
");
i=max_course_i[2];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:
", stu[i].no, stu[i].name, stu[i].score[2]);


getchar();
getchar();
}

#include<stdio.h>
void main()
{
int num;
float arry[10],sum;
for(num=0;num<10;num++)
{
printf("请输入第%d个学生的成绩:");
scanf("%f",&arry[num]);
sum=0;
sum=sum+arry[num];
printf("\n");
}
printf("十个学生的总成绩为:%4f\n他们的平均成绩是:%4f\n",sum,sum/10);
}
差不多就是这样了,你用VC6.0的平台试一下,这些东西是比较简单的,好好看看谭浩强的那本C语言吧

#include

#define MAX 10

struct student {
char no[10];
char name[10];
float score[3];
}stu[MAX];

float ave_course[3] = {0};
float ave_student[MAX] = {0};

int max_ave_i = 0; // 存储平均分最高的学生索引
int max_course_i[3] = {0}; //存储单科分数,最高的学生索引

// 录入学生成绩
void input(int n) {
int i;
for(i=0; i<n; i++) {
scanf("%s %s", stu[i].no,stu[i].name);
scanf("%f %f %f", &stu[i].score[0], &stu[i].score[1], &stu[i].score[2]);
}
}

// 计算平均成绩
void average(int n){
int i,j;
float max_ave = 0.0f;
float max_course[3] = {0};

// 计算每门课的平均成绩
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
ave_course[j] += stu[i].score[j];

if(max_course[j]<stu[i].score[j]){
max_course[j]<stu[i].score[j];
max_course_i[j] = i;
}
}
}

for(j=0; j<3; j++) {
ave_course[j] /= n;
}

// 计算每个学生的平均成绩
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
ave_student[i] += stu[i].score[j];
}
ave_student[i] /= 3;
if(max_ave < ave_student[i]) {
max_ave = ave_student[i];
max_ave_i = i;
}
}
}

void main () {
int i,j;

printf("请输入学生的学号 姓名 语文 数学 英语");
input(MAX);

average(MAX);
printf("\n课程的平均成绩是: %6.2f %6.2f %6.2f\n",ave_course[0],ave_course[1],ave_course[2]);

printf("\n学生的平均成绩是: \n");
for(i=0; i<MAX; i++) {
printf(" %s %s %6.2f\n", stu[i].no, stu[i].name, ave_student[i]);
}

printf("平均分,最高的学生:\n");
printf(" 学号=%s, 姓名=%s, 平均分=%6.2f:\n", stu[max_ave_i].no, stu[max_ave_i].name, ave_student[max_ave_i]);

printf("语文,最高分的学生:\n");
i=max_course_i[0];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:\n", stu[i].no, stu[i].name, stu[i].score[0]);

printf("数学,最高分的学生:\n");
i=max_course_i[1];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:\n", stu[i].no, stu[i].name, stu[i].score[1]);

printf("英语,最高分的学生:\n");
i=max_course_i[2];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:\n", stu[i].no, stu[i].name, stu[i].score[2]);

getchar();
getchar();
}

不知道楼主是否要输入输出提示,我写上去了。
#include<stdio.h>
int main(void)
{
int i;
double mark,sum=0,average;
printf("Enter mark:\n");
for(i=1;i<=10;i++)
{
scanf("%lf",&mark);
sum=sum+mark;
}
average=sum/10;
printf("Sum is %.2f\n",sum);
printf("Average is %.2f\n",average);
return 0;
}

C语言定义十个学生成绩键盘录入一个学生的值去成绩里对比如果存在输出是...
```c include <stdio.h> int main() { int scores[10]; \/\/ 定义一个包含10个学生成绩的数组 int i, target, position;\/\/ 从键盘输入10个学生成绩 printf("请输入10个学生成绩:\\n");for(i = 0; i < 10; i++) { scanf("%d", &scores[i]);} \/\/ 输入要查找的成绩 printf("...

用C语言编程:从键盘输入10个学生的成绩,由高到低排序输出成绩
在C语言编程中,要实现从键盘输入10个学生的成绩并按高分到低分进行排序,可以使用经典的冒泡排序算法。下面是一个简化的步骤描述:首先,包含必要的头文件并定义数组大小:利用C语言,我们可以使用冒泡排序算法轻松解决这个问题。开始时,需要包含,并设定一个数组大小,例如#define SIZE 11。接着,定义一...

从键盘输入10个学生的成绩,试统计出他们的成绩总和及平均值?是C语言
<stdio.h> void main(){ int i,sum;int a[10];float average;sum =0;printf("please input the score.\\n");for(i=0;i<10;i++){ scanf("%d",&a[i]);sum += a[i];} average = (float)(sum\/10.0);printf("总分=%d,平均分=%f\\n",sum,average);} VC6.0下调试通过。

C语言假设一个班有10名学生,现要求从键盘录入这10名学生的成绩
include<stdio.h> double sort(double s[10]){ int i;double sum=0;for(i=0;i<10;i++)sum=sum+s[i];sum=sum\/10;return sum;} void main(){ double s[10],t,a;int i,j;for(i=0;i<10;i++) scanf("%lf",&s[i]);for(i=0;i<9;i++)for(j=i+1;j<10;j++)if...

用C语言编程:从键盘输入10个学生的成绩和学号,将其排序输出,并输出中...
include<stdio.h> struct student { int id;int score;}stu[10];int main(void){ int i,m;struct student j;for( i=0; i<10; i++){ printf("请输入学生的学号:");scanf("%d",&stu[i].id);printf("请输入学生的成绩:");scanf("%d",&stu[i].score);printf("\\n");} print...

用C语言编写程序:从键盘输入10个学生的成绩,输出其最大值、最小值、和...
代码如图所示,结尾也贴出了源代码 望采纳,谢谢 include <stdio.h> int main(){ double a[10]={};double sum=NULL;double max=NULL;double min=NULL;puts("请输入10个学生的成绩:");for(int i=0;i<10;i++){ scanf("%lf",&a[i]);} for(int i=0;i<10;i++){ sum+=a[i];...

C语言编程题:从键盘输入10个学生的成绩,计算平均成绩,统计及格人数,计算...
include "stdio.h"define N 10 void main(){ int a[N],ave,sum=0,pass=0,better=0;for(int i=0;i<N;i++){ scanf("%d",&a[i]);sum+=a[i];} ave=sum\/N;for(int i=0;i<N;i++){ if(a[i]>=60)pass++;if(a[i]>ave)better++;} printf("平均分:%d\\n及格人数%d\\n...

C语言基础知识:输入10个学生的成绩求最大值,最小值,平均值,排列(从小...
include<stdio.h>void main(){int a[10];int i,sum=0,ave=0,max,min,j,t;printf("please input 10 number :\\n");for(i=0;i<10;i++) \/\/输入10个数scanf("%d",&a[i]);min=a[0]; \/\/初始化最大最小值max=a[0];for(i=0;i<10;i++)\/\/打擂台选最小值if(min>a...

C语言编程,从键盘输入10个学生的成绩,试统计出他们的成绩总和及平均值...
1、请输入第7个学生的成绩:76请输入第8个学生的成绩:84请输入第9个学生的成绩:87请输入第10个学生的成绩:7910名学生的平均成绩为:830```希望这个代码可以帮助你实现你所需的功能。2、C语言:编写程序,输入10个学生的成绩数据,计算并输出平均分及低于平均分的学生的人数。

用C语言编程:从键盘输入10个学生的成绩,由高到低排序输出成绩
SIZE] = {0};int i;for(i=0;i<10;i++)scanf("%d",&number[i]);bubble_sort(number, SIZE);for (i = 0; i < SIZE; i++){ printf("%d\\n", number[i]); } return 0;} 运行过程 除了冒泡排序法,还有选择排序法,快速排序法,还请题主在大学好好学习哦 ...