统计数组的正,负,零的个数c语言
时间: 2024-02-24 08:58:57 浏览: 93
可以用一个循环来遍历数组,同时用三个计数器来分别记录正数、负数和零的个数。示例代码如下:
```c
#include <stdio.h>
int main() {
int arr[10] = {-3, 0, 2, 5, -1, 0, 4, -2, 1, 0};
int positive_count = 0, negative_count = 0, zero_count = 0;
int i;
for (i = 0; i < 10; i++) {
if (arr[i] > 0) {
positive_count++;
} else if (arr[i] < 0) {
negative_count++;
} else {
zero_count++;
}
}
printf("Positive count: %d\n", positive_count);
printf("Negative count: %d\n", negative_count);
printf("Zero count: %d\n", zero_count);
return 0;
}
```
输出结果为:
```
Positive count: 4
Negative count: 3
Zero count: 3
```
相关问题
统计数组中比邻元素小的数组元素的个数,c语言
在C语言中,统计数组中比邻元素小的数组元素的个数可以采用遍历数组的方式。这里有一个简单的算法:
```c
#include <stdio.h>
int count_decreasing_pairs(int arr[], int n) {
int count = 0; // 初始化计数器
for (int i = 0; i < n - 1; ++i) { // 遍历数组,但跳过最后一个元素,因为无法比较它与下一个元素
if (arr[i] > arr[i + 1]) {
++count; // 如果当前元素大于下一个,说明是一个减少对
}
}
return count;
}
// 示例数组
int main() {
int array[] = {5, 4, 2, 8, 6};
int size = sizeof(array) / sizeof(array[0]);
int result = count_decreasing_pairs(array, size);
printf("数组中比邻元素小的个数是: %d\n", result);
return 0;
}
```
这个`count_decreasing_pairs`函数接收一个整型数组和它的长度,通过迭代检查每个元素与其后的元素之间的大小关系,如果发现当前元素较大,则增加计数器。最后返回计数器的值即为满足条件的元素对的数量。
统计数组中指定元素的个数C语言指针
好的,下面是统计数组中指定元素的个数的C语言代码,使用指针实现:
```c
#include <stdio.h>
int count(int *arr, int n, int x) {
int i, cnt = 0;
for (i = 0; i < n; i++) {
if (*(arr + i) == x) {
cnt++;
}
}
return cnt;
}
int main() {
int arr[] = {1, 2, 3, 4, 5, 2, 3, 2};
int n = sizeof(arr) / sizeof(arr[0]);
int x = 2;
int cnt = count(arr, n, x);
printf("%d appears %d times in the array.", x, cnt);
return 0;
}
```
这里也使用指针访问数组元素,函数中传入数组的指针、数组长度和要统计的元素值,然后使用指针访问数组元素进行统计,最后返回统计结果。
阅读全文