C语言键盘输入三个数求平均数(嵌套调用)
时间: 2023-09-16 17:12:52 浏览: 141
好的,下面是使用嵌套调用的键盘输入三个数求平均数的 C 语言代码示例:
```c
#include <stdio.h>
float input_num() {
float num;
printf("请输入一个数字:");
scanf("%f", &num);
return num;
}
float calculate_avg() {
float num1 = input_num();
float num2 = input_num();
float num3 = input_num();
float avg = (num1 + num2 + num3) / 3;
return avg;
}
int main() {
printf("三个数的平均数为:%f\n", calculate_avg());
return 0;
}
```
与 Python 版本的代码类似,这段 C 语言代码也定义了两个函数:`input_num()` 和 `calculate_avg()`。`input_num()` 函数用于获取用户输入的数字,并返回浮点数类型的值。`calculate_avg()` 函数中嵌套调用 `input_num()` 函数三次,分别获取三个数字,并计算它们的平均值。最后,在 `main()` 函数中调用 `calculate_avg()` 函数,并将结果打印到控制台上。
相关问题
计算数组平均数函数嵌套调用c语言输入
计算数组平均数的函数嵌套调用C语言程序可以按照以下步骤实现。
首先,定义一个函数来计算数组的平均数。这个函数将一个整数数组作为参数传递进来,并且用一个double类型变量来存储平均值。函数在计算平均值时需要遍历整个数组并把每个元素相加,然后除以数组长度,最后返回平均值。
接下来,在主函数中,定义一个整数数组并让用户输入数组元素的值。使用scanf函数从键盘读取整数值并存储在数组中。
然后,将数组作为参数调用刚刚定义的计算平均数的函数,并返回平均值。最后,使用printf函数将平均值输出到屏幕上,清空所有变量,并结束程序。
下面是示例代码:
#include <stdio.h>
// 定义计算平均数函数
double average(int array[], int len)
{
int i, sum = 0;
double avg;
for (i = 0; i < len; i++) {
sum += array[i];
}
avg = (double)sum / len;
return avg;
}
int main()
{
int array[10], i, len;
double avg;
printf("请输入数组长度:");
scanf("%d", &len);
printf("请输入数组元素:");
for (i = 0; i < len; i++) {
scanf("%d", &array[i]);
}
avg = average(array, len);
printf("数组平均数为:%.2lf", avg);
return 0;
}
用c语言输入10个学生五门课程的成绩,分别用函数求:1、每个学生的平均分,并输出;2、每门课的平均分,并输出。
好的,我会尽力回答你的问题。
以下是用C语言实现输入10个学生五门课程成绩并求平均分的代码,包括每个学生的平均分和每门课的平均分:
```c
#include <stdio.h>
#define STUDENTS 10
#define COURSES 5
// 计算每个学生的平均分
void average_student_score(float scores[][COURSES]) {
float avg;
for (int i = 0; i < STUDENTS; i++) {
avg = 0;
for (int j = 0; j < COURSES; j++) {
avg += scores[i][j];
}
avg /= COURSES;
printf("学生%d的平均分为:%.2f\n", i + 1, avg);
}
}
// 计算每门课的平均分
void average_course_score(float scores[][COURSES]) {
float avg;
for (int j = 0; j < COURSES; j++) {
avg = 0;
for (int i = 0; i < STUDENTS; i++) {
avg += scores[i][j];
}
avg /= STUDENTS;
printf("第%d门课的平均分为:%.2f\n", j + 1, avg);
}
}
int main() {
float scores[STUDENTS][COURSES];
// 输入每个学生的成绩
for (int i = 0; i < STUDENTS; i++) {
printf("请输入第%d个学生的五门课程成绩:\n", i + 1);
for (int j = 0; j < COURSES; j++) {
scanf("%f", &scores[i][j]);
}
}
// 计算每个学生的平均分并输出
average_student_score(scores);
// 计算每门课的平均分并输出
average_course_score(scores);
return 0;
}
```
在上面的代码中,我们首先定义了常量`STUDENTS`和`COURSES`,分别表示学生数和课程数。然后,我们通过定义一个二维数组`scores`来存储每个学生的五门课程成绩。
接着,我们定义了两个函数`average_student_score`和`average_course_score`,分别用来计算每个学生的平均分和每门课的平均分。
在`average_student_score`函数中,我们使用两个嵌套的循环来遍历每个学生的每门课程成绩,然后计算出每个学生的平均分并输出。
在`average_course_score`函数中,我们也使用了两个嵌套的循环来遍历每门课程的每个学生成绩,然后计算出每门课的平均分并输出。
最后,在`main`函数中,我们首先通过循环输入每个学生的成绩,然后调用`average_student_score`和`average_course_score`函数分别计算每个学生的平均分和每门课的平均分,并输出结果。
希望这段代码能够帮助到你,如果你有任何问题或需要进一步的解释,请随时问我。
相关推荐
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![text/plain](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)