C语言写一个函数将输入的负数数字逆序的输出
时间: 2024-11-25 14:20:03 浏览: 9
在C语言中,你可以编写一个函数来实现这个功能。这里是一个简单的示例,它使用了数组和一些基本的循环结构:
```c
#include <stdio.h>
// 函数声明,返回值类型是void,接受整型数组作为参数,数组大小通过指针传入
void reverse_negatives(int* arr, int size) {
// 初始化两个指针,一个指向数组开始,一个指向结束
int start = 0;
int end = size - 1;
while (start < end) {
// 如果开始位置的元素是正数,交换它和结束位置的元素
if (arr[start] >= 0) {
break; // 正数部分已处理,跳出循环
}
// 如果结束位置的元素是负数,交换它们
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
// 移动指针
start++;
end--;
}
}
int main() {
int input[] = {5, -1, 3, -2, 7, -4};
int n = sizeof(input) / sizeof(input[0]);
printf("Original array: ");
for (int i = 0; i < n; i++) {
printf("%d ", input[i]);
}
reverse_negatives(input, n);
printf("\nReversed with negative numbers only: ");
for (int i = 0; i < n; i++) {
printf("%d ", input[i]);
}
return 0;
}
```
这个程序首先会打印原始数组,然后调用`reverse_negatives`函数来反转数组中的负数,最后再次打印处理后的数组。
阅读全文