7-4输入一维数组元素值求正数和
时间: 2024-06-06 18:06:16 浏览: 38
好的,这个问题很容易回答。请看下面的代码:
int arr[] = {7, -4, 6, -2, -1, 3, -5};
int sum = 0;
for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); i++) {
if (arr[i] > 0) {
sum += arr[i];
}
}
printf("正数和为:%d", sum);
输出结果为:
正数和为:16
希望这个回答对你有帮助。
相关问题
c语言5-5 输入一维数组元素值求正数和 分数 10 作者 jibaoyu 单位 江西理工大学 从键盘输入10个数,存入数组中,依次输出数组元素并统计其中的正数之总和。(要求使用数组) 输入格式: 在一行中输入10个数 输出格式: 前两行输出数组元素值,每个元素占8个字符位置,要求左对齐,每行输出5个元素值,共两行。 第三行输出正数和,格式为:sum=...,输出完毕后换行。 输入样例: 在这里给出一组输入。例如: 12 45 -23 33 -87 20 7 -111 0 43 输出样例: 在这里给出相应的输出。例如: 12 45 -23 33 -87 20 7 -111 0 43 sum=160
好的,我会帮你解答这个问题。
以下是 C 语言的代码实现:
```c
#include <stdio.h>
int main() {
int a[10];
int i, sum;
for (i = 0; i < 10; i++) {
scanf("%d", &a[i]);
}
printf("%-8d%-8d%-8d%-8d%-8d\n", a[0], a[1], a[2], a[3], a[4]);
printf("%-8d%-8d%-8d%-8d%-8d\n", a[5], a[6], a[7], a[8], a[9]);
sum = 0;
for (i = 0; i < 10; i++) {
if (a[i] > 0) {
sum += a[i];
}
}
printf("sum=%d\n", sum);
return 0;
}
```
运行结果:
```
12 45 -23 33 -87
20 7 -111 0 43
sum=160
```
解释一下代码:
首先定义一个长度为 10 的整型数组 `a`,用来存储输入的 10 个数。
然后使用 `for` 循环将输入的 10 个数存入数组中。
接着使用 `printf` 函数输出数组元素,格式化输出采用左对齐,每个元素占 8 个字符位置,每行输出 5 个元素值,共两行。
最后再使用一个 `for` 循环遍历数组,统计其中的正数之和,并用 `printf` 函数输出结果。
编程输入一个含有 n个整数的一维数组,统计其中正数的和与负数的和。
好的,这是一个编程问题。可以使用一个循环来遍历数组中的每个元素,然后判断它是正数还是负数,最后分别累加正数和负数的和。以下是一个示例代码:
```
int[] arr = {1, -2, 3, -4, 5};
int positiveSum = 0;
int negativeSum = 0;
for (int i = 0; i < arr.length; i++) {
if (arr[i] > 0) {
positiveSum += arr[i];
} else {
negativeSum += arr[i];
}
}
System.out.println("正数的和为:" + positiveSum);
System.out.println("负数的和为:" + negativeSum);
```
输出结果为:
```
正数的和为:9
负数的和为:-6
```