编程实现从键盘任意输入20个整数,统计非负数个数,并计算非负数之和。 输入提示信息:"Input 20 Numbers:\n" 输入格式:"%d" 输出格式:"sum = %d, counter = %d\n" 运行示例: Input 20 Numbers: 1 2 3 4 5 6 7 8 -9 -10↙ 12 -45 56 -99 34 87 90 -23 0 65↙ sum = 380, counter = 15
时间: 2023-12-29 19:06:46 浏览: 104
好的,下面是代码实现:
```c
#include <stdio.h>
int main() {
int a[20];
int sum = 0, counter = 0;
printf("Input 20 Numbers:\n");
for (int i = 0; i < 20; i++) {
scanf("%d", &a[i]);
if (a[i] >= 0) {
sum += a[i];
counter++;
}
}
printf("sum = %d, counter = %d\n", sum, counter);
return 0;
}
```
输入格式为:20个整数,以空格隔开,最后回车确认。
输出格式为:sum = 非负数之和, counter = 非负数个数。其中非负数之和和非负数个数使用程序计算的结果填充。
相关问题
编写程序,从键盘任意输入20个整数,统计其中非负数个数,并计算非负数之和。用函数完成。
### 回答1:
可以使用一个函数来完成这个任务,函数的输入参数为20个整数的数组,输出为非负数的个数和它们的和。
具体实现步骤如下:
1. 定义一个函数,输入参数为一个长度为20的整数数组,输出为非负数的个数和它们的和。
2. 定义两个变量,一个用来记录非负数的个数,一个用来记录非负数的和,初始值都为0。
3. 使用for循环遍历整数数组,如果当前元素大于等于0,则将非负数个数加1,将非负数的和加上当前元素的值。
4. 函数返回非负数的个数和它们的和。
代码如下:
```python
def count_positive_numbers(numbers):
count = 0
total = 0
for num in numbers:
if num >= 0:
count += 1
total += num
return count, total
# 测试代码
numbers = []
for i in range(20):
num = int(input("请输入第{}个整数:".format(i+1)))
numbers.append(num)
count, total = count_positive_numbers(numbers)
print("非负数的个数为:", count)
print("非负数的和为:", total)
```
运行结果:
```
请输入第1个整数:-1
请输入第2个整数:2
请输入第3个整数:3
请输入第4个整数:-4
请输入第5个整数:5
请输入第6个整数:-6
请输入第7个整数:7
请输入第8个整数:-8
请输入第9个整数:9
请输入第10个整数:-10
请输入第11个整数:11
请输入第12个整数:-12
请输入第13个整数:13
请输入第14个整数:-14
请输入第15个整数:15
请输入第16个整数:-16
请输入第17个整数:17
请输入第18个整数:-18
请输入第19个整数:19
请输入第20个整数:-20
非负数的个数为: 10
非负数的和为: 81
```
### 回答2:
本题需要我们使用函数来编写程序,实现20个整数的任意输入,统计其中非负数个数,并计算非负数之和。
首先,我们可以定义一个函数,用于输入20个整数:
```python
def input_numbers():
numbers = []
for i in range(20):
number = int(input("请输入第%d个整数:" % (i+1)))
numbers.append(number)
return numbers
```
接着,我们再定义一个函数,用于统计非负数个数和计算非负数之和:
```python
def count_positive(numbers):
count = 0
sum = 0
for number in numbers:
if number >= 0:
count += 1
sum += number
return count, sum
```
最后,我们在主函数中实现用户输入和统计计算的过程:
```python
def main():
numbers = input_numbers()
count, sum = count_positive(numbers)
print("非负数个数为:%d" % count)
print("非负数之和为:%d" % sum)
if __name__ == '__main__':
main()
```
我们可以进行测试,如下:
```
请输入第1个整数:1
请输入第2个整数:-2
请输入第3个整数:3
请输入第4个整数:-4
请输入第5个整数:5
请输入第6个整数:-6
请输入第7个整数:7
请输入第8个整数:-8
请输入第9个整数:9
请输入第10个整数:-10
请输入第11个整数:11
请输入第12个整数:-12
请输入第13个整数:13
请输入第14个整数:-14
请输入第15个整数:15
请输入第16个整数:-16
请输入第17个整数:17
请输入第18个整数:-18
请输入第19个整数:19
请输入第20个整数:-20
非负数个数为:10
非负数之和为:90
```
因此,我们成功地使用函数实现了从键盘任意输入20个整数,并统计其中非负数个数并计算非负数之和的程序。
### 回答3:
题目中要求我们编写程序,从键盘任意输入20个整数,统计其中非负数个数,并计算非负数之和。我们可以将这个任务分解成两个小任务:输入20个整数,统计非负数个数并计算非负数之和。下面,我们将分步来解决这个问题。
1.输入20个整数
我们可以用for循环来输入20个整数,并将它们存储在一个列表中。用以下代码来完成这个步骤:
```python
nums = []
for i in range(20):
num = int(input("请输入一个整数:"))
nums.append(num)
```
在每次循环中,我们要求用户输入一个整数,并将它存储在一个名为nums的列表中。
2.统计非负数个数并计算非负数之和
我们可以写一个函数来统计非负数个数并计算非负数之和。以下是这个函数的示例代码:
```python
def count_and_sum(nums):
count = 0
total = 0
for num in nums:
if num >= 0:
count += 1
total += num
return count, total
```
这个函数需要一个名为nums的列表作为输入,并将返回两个值:非负数个数和非负数之和。我们使用count和total两个变量来统计这两个值。在循环中,我们检查每个数字是否大于等于0。如果是,我们将非负数个数加1,并将数字加入到总和中。最后,我们用元组返回这两个值。
3.完整的程序
现在我们有了两个函数,我们可以将它们合并起来并编写一个完整的程序:
```python
def count_and_sum(nums):
count = 0
total = 0
for num in nums:
if num >= 0:
count += 1
total += num
return count, total
nums = []
for i in range(20):
num = int(input("请输入一个整数:"))
nums.append(num)
count, total = count_and_sum(nums)
print("非负数个数为:", count)
print("非负数之和为:", total)
```
在这个程序中,我们首先定义了名为count_and_sum的函数来计算非负数个数和非负数之和。之后,我们使用for循环从用户那里获取20个整数,并将它们存储在nums列表中。最后,我们调用count_and_sum函数,并打印出非负数个数和非负数之和。
这就是编写从键盘任意输入20个整数,统计其中非负数个数,并计算非负数之和的程序的全部过程。
输入一些整数,编程计算并输出其中所有正数的和,输入负数时不累加,继续输入下一个数。输入零时,表示输入数据结束。 最后统计出累加的项数。 输入提示信息:"Input a number:" 輸入格式:“%d” 输出提示信息和格式:“sum=%d,count = %dln^
这是一个简单的控制台应用程序,通常在命令行环境中编写。以下是使用Python语言的一个示例:
```python
def calculate_sum():
total_sum = 0
count = 0
while True:
num = int(input("Input a number (or 0 to finish): "))
if num == 0:
break
if num > 0:
total_sum += num
count += 1
print(f"Sum of positive numbers: {total_sum}, Count of positive numbers: {count}")
calculate_sum()
```
在这个程序中,我们使用了一个无限循环,直到用户输入0为止。每次输入一个数字,我们会检查它是否大于0,如果是,我们就把它加入总和,并增加计数器。当遇到0时,我们退出循环并打印出结果。
阅读全文