/计算学生平均成绩:定义学生结构类型的数组:包括学号、姓名、成绩信息。输入n(n<10),再输入n个同学的学号、姓名、成绩项信息,计算他们的平均成绩,成绩在主函数输出。要求成绩保留两位小数。 例如输人: 4 1 zhang 79 2 wang 80 3 qian 90 4 1i 80 输出: ave=80.00 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的任何内容,仅在Begin和End之间的位置填入所编写的若干语句。关x关关关关关x兴Begin**********下、开其关其关关托关其其End 并关*并并*关并不可删除 #include“stdio.h" float fun(structSTU S[],int n); void TestFunc(); struct STU <int num; char name[30]; r float score; ; float fun(struct STU s[],int n) < /北共*兴x兴关*Begin并美并** float b=0,k=0; int i; for(i=0;i<n;i++)
时间: 2024-01-17 10:40:44 浏览: 74
{
b += s[i].score; //累加成绩
k++; //累加人数
}
return b/k; //计算平均成绩
} //北共*兴x兴关*End并美并**
int main()
{
int n,i;
struct STU s[10];
float ave;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d %s %f",&s[i].num,s[i].name,&s[i].score);
}
ave=fun(s,n);
printf("ave=%.2f",ave);
TestFunc(); //测试函数,不要删除
return 0;
}
void TestFunc()
{
struct STU s[10]={{1,"zhang",79},{2,"wang",80},{3,"qian",90},{4,"li",80}};
float ave=fun(s,4);
if(ave==82.25)
printf("Pass\n");
else
printf("Fail\n");
}
相关问题
计算学生平均成绩:定义学生结构类型的数组,包括学号、姓名、成绩信息。输入口CaK10)再箱入口个同学的学号:廷名、成绩项信息,计算他们的平均成绩,成绩在主函数输出。要求成绩保留两位小数。
好的,我可以为您解答这个问题。以下是示例代码:
```c
#include <stdio.h>
#define MAX_STUDENTS 10 // 最大学生数
struct student {
int id; // 学号
char name[20]; // 姓名
float score; // 成绩
};
int main() {
struct student students[MAX_STUDENTS];
int count, i;
float total_score = 0.0, avg_score;
printf("请输入学生个数(不超过 %d):", MAX_STUDENTS);
scanf("%d", &count);
// 输入学生信息
for (i = 0; i < count; i++) {
printf("请输入第 %d 个学生的学号、姓名、成绩:", i + 1);
scanf("%d%s%f", &students[i].id, students[i].name, &students[i].score);
total_score += students[i].score;
}
// 计算平均成绩
avg_score = total_score / count;
// 输出平均成绩
printf("平均成绩为:%.2f\n", avg_score);
return 0;
}
```
这个程序使用了结构体类型数组来存储学生的信息,包括学号、姓名和成绩。首先通过标准输入获取学生个数,然后循环输入每个学生的信息,并累加成绩以便后续计算平均成绩。最后输出平均成绩,保留两位小数。
计算学生平均成绩,定义学生结构类型的数组,包括学号姓名成绩信息,输入n,( n<10),再输入n个学生的学号,姓名,成绩项信息,计算平均成绩,成绩在主函数输出,要求成绩保留两位小数
好的,我可以帮你解决这个问题。以下是 C++ 代码示例:
```c++
#include<iostream>
#include<iomanip>
using namespace std;
struct Student {
string id;
string name;
double score;
};
int main() {
int n;
cout << "请输入学生数量(n<10):" << endl;
cin >> n;
Student students[n];
double sum = 0;
for(int i = 0; i < n; i++) {
cout << "请输入第" << i+1 << "个学生的学号、姓名和成绩:" << endl;
cin >> students[i].id >> students[i].name >> students[i].score;
sum += students[i].score;
}
double average = sum / n;
cout << "学生平均成绩为:" << fixed << setprecision(2) << average << endl;
return 0;
}
```
通过定义结构体类型 `Student`,我们可以创建包含学号、姓名和成绩信息的学生数组。我们首先输入学生数量 `n`,然后循环输入每个学生的信息,并计算总成绩。最后,我们计算平均成绩并输出。注意使用 `setprecision(2)` 保留两位小数。
阅读全文