编写自定义函数,判断数组中的元素是否按降序排列,采用指针进行参数的传递。
时间: 2024-02-13 21:05:38 浏览: 59
可以参考如下的 C 语言代码实现:
```c
#include <stdio.h>
int isDescending(int* arr, int size) {
int i;
for (i = 0; i < size - 1; i++) {
if (*(arr + i) < *(arr + i + 1)) {
return 0;
}
}
return 1;
}
int main() {
int arr[] = {10, 8, 6, 4, 2, 0};
int size = sizeof(arr) / sizeof(arr[0]);
if (isDescending(arr, size)) {
printf("The array is sorted in descending order.\n");
} else {
printf("The array is not sorted in descending order.\n");
}
return 0;
}
```
这里定义了一个名为 `isDescending` 的函数,它接受一个整型指针 `arr` 和一个整型参数 `size`,用于判断 `arr` 数组中的元素是否按降序排列。在函数内部,通过使用指针来访问数组中的元素,判断相邻两个元素的大小关系,如果发现有任何一个相邻元素不是按降序排列的,则返回 `0` 表示数组不是按降序排列的,否则返回 `1` 表示数组是按降序排列的。
在 `main` 函数中,定义了一个整型数组 `arr`,并且通过 `sizeof` 运算符和除法运算计算出了数组的长度 `size`,然后调用 `isDescending` 函数进行判断,并输出相应的结果。
阅读全文