c语言实现:在程序编辑区编写程序,程序功能要求如下: 求n个整数的平均值。 输入样例:10 38 98 87 89 23 44 67 100 345 输出样例:90.1000
时间: 2024-02-15 22:02:24 浏览: 188
好的,以下是一份C语言程序代码,可以实现您的需求:
```c
#include <stdio.h>
int main() {
int n, i;
float nums[100], sum = 0, avg;
scanf("%d", &n); // 输入n个整数
for (i = 0; i < n; i++) {
scanf("%f", &nums[i]); // 读取整数序列
sum += nums[i]; // 累加整数
}
avg = sum / n; // 求平均值
printf("%.4f", avg); // 输出平均值,保留四位小数
return 0;
}
```
您可以将这段代码复制到您的 C 编辑器中运行,输入样例中的整数序列,即可得到输出样例中的结果。
注意,本程序假定输入的整数序列中,每个整数之间以空格分隔。如果您的输入格式与此不同,需要相应地修改代码。同时,程序中设定了整数序列最大长度为100,如果您的输入超过了100个整数,也需要相应地修改代码。
相关问题
c语言函数递归在程序编辑区编写程序,程序功能要求如下: 求n个整数的平均值。 输入样例:10 38 98 87 89 23 44 67 100 345 输出样例:90.1000
以下是实现该功能的 C 语言程序:
```c
#include <stdio.h>
double avg(int *nums, int n)
{
if (n == 0) {
return 0;
} else {
return (nums[n-1] + (n-1) * avg(nums, n-1)) / n;
}
}
int main()
{
int n;
int nums[100];
printf("请输入整数个数:");
scanf("%d", &n);
printf("请输入%d个整数:", n);
for (int i = 0; i < n; i++) {
scanf("%d", &nums[i]);
}
printf("平均值为:%.4f", avg(nums, n));
return 0;
}
```
程序递归计算平均值,基本思路是:
- 当 n=0 时,返回 0。
- 当 n>0 时,递归计算前 n-1 个整数的平均值 avg(nums, n-1),然后将第 n 个整数 nums[n-1] 加上前 n-1 个整数的平均值,并除以 n,得到 n 个整数的平均值。
注意,上述程序中,我们使用了一个较小的数组 nums[100] 来存储输入的整数,实际上,我们可以使用动态内存分配来避免数组大小的限制。
c语言函数递归循环结构在程序编辑区编写程序,程序功能要求如下: 求n个整数的平均值。 输入样例:10 38 98 87 89 23 44 67 100 345 输出样例:90.1000
以下是使用循环结构实现该功能的 C 语言程序:
```c
#include <stdio.h>
double avg(int *nums, int n)
{
double sum = 0;
for (int i = 0; i < n; i++) {
sum += nums[i];
}
return sum / n;
}
int main()
{
int n;
int nums[100];
printf("请输入整数个数:");
scanf("%d", &n);
printf("请输入%d个整数:", n);
for (int i = 0; i < n; i++) {
scanf("%d", &nums[i]);
}
printf("平均值为:%.4f", avg(nums, n));
return 0;
}
```
程序使用循环计算平均值,基本思路是:
- 用一个变量 sum 存储 n 个整数的和。
- 循环遍历数组 nums,将每个元素加到 sum 中。
- 将 sum 除以 n,得到 n 个整数的平均值。
注意,上述程序中,我们依然使用了一个较小的数组 nums[100] 来存储输入的整数,实际上,我们可以使用动态内存分配来避免数组大小的限制。
阅读全文