输入正整数n(表示整数个数),继续输入n个整数存入数组,计算它们的平均值,并统计出大于平均值的整数的个数
时间: 2023-05-31 22:17:50 浏览: 352
C语言程序设计-求一组数中大于平均值的数的个数;例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函数值3
5星 · 资源好评率100%
### 回答1:
好的,以下是中文回复:
首先,需要输入一个正整数n,表示接下来要输入的整数的个数。
然后,继续输入n个整数,并将它们存入一个数组中。
接着,计算这n个整数的平均值。
最后,统计出大于平均值的整数的个数,并输出结果。
### 回答2:
首先,我们需要通过输入函数获取用户输入的整数个数n,然后定义一个数组,用来存放n个整数。
接下来,我们需要使用循环语句,通过用户输入进行n次循环,将每次输入的整数存入数组中。这里可以使用for循环或while循环。
接着,我们可以计算这n个整数的平均值。将数组中所有元素相加后,除以n即可得到平均值。
最后,我们需要再次使用循环语句,遍历整个数组,统计大于平均值的整数个数。如果数组中的某个元素大于平均值,则计数器加1。
最终,我们可以输出平均值和大于平均值的整数个数,以展示计算结果。
以下是一个实现这个功能的示例代码:
```python
n = int(input("请输入整数个数:"))
arr = []
for i in range(n):
x = int(input("请输入第{}个整数:".format(i+1)))
arr.append(x)
avg = sum(arr) / n
count = 0
for i in arr:
if i > avg:
count += 1
print("这{}个整数的平均值为:{}".format(n, avg))
print("大于平均值的整数的个数为:{}".format(count))
```
当用户输入5、2、3、6、9时,上述代码将输出:
```
这5个整数的平均值为:5.0
大于平均值的整数的个数为:2
```
### 回答3:
本题需要分两步来实现。首先,我们需要读取用户输入的n和n个整数,并计算它们的平均值。然后,我们需要统计数组中大于平均值的整数的个数。
读取用户输入
首先,我们需要读取用户输入的n和n个整数,可以借助Scanner类来实现。代码如下:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// 读取n和n个整数
int n = input.nextInt(); // 读取整数个数
int[] nums = new int[n]; // 创建一个整数数组
for (int i = 0; i < n; i++) {
nums[i] = input.nextInt(); // 读取第i个整数
}
}
}
```
计算平均值
接下来,我们需要计算n个整数的平均值。我们可以通过遍历数组并计算所有元素的和,然后除以元素个数来实现。代码如下:
```java
int total = 0; // 所有整数的和
for (int i = 0; i < n; i++) {
total += nums[i]; // 累加第i个整数
}
double avg = (double) total / n; // 平均值
System.out.printf("平均值为:%.2f\n", avg); // 输出平均值,保留小数点后两位
```
统计大于平均值的整数个数
最后,我们需要统计数组中大于平均值的整数的个数。我们可以通过遍历数组并比较每个元素和平均值的大小,然后统计大于平均值的元素个数即可。代码如下:
```java
int count = 0; // 大于平均值的整数个数
for (int i = 0; i < n; i++) {
if (nums[i] > avg) {
count++; // 如果第i个整数大于平均值,则统计个数加1
}
}
System.out.println("大于平均值的整数个数为:" + count); // 输出大于平均值的整数个数
```
完整代码如下:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// 读取n和n个整数
int n = input.nextInt(); // 读取整数个数
int[] nums = new int[n]; // 创建一个整数数组
for (int i = 0; i < n; i++) {
nums[i] = input.nextInt(); // 读取第i个整数
}
// 计算平均值
int total = 0; // 所有整数的和
for (int i = 0; i < n; i++) {
total += nums[i]; // 累加第i个整数
}
double avg = (double) total / n; // 平均值
System.out.printf("平均值为:%.2f\n", avg); // 输出平均值,保留小数点后两位
// 统计大于平均值的整数个数
int count = 0; // 大于平均值的整数个数
for (int i = 0; i < n; i++) {
if (nums[i] > avg) {
count++; // 如果第i个整数大于平均值,则统计个数加1
}
}
System.out.println("大于平均值的整数个数为:" + count); // 输出大于平均值的整数个数
}
}
```
注意,本题需要注意保留平均值的小数点后两位。可以使用System.out.printf()方法来实现。
阅读全文