题目:编写一个C语言程序,实现对一组整数进行排序。
要求:用户输入一组整数,程序对这些整数进行排序(升序或降序),并输出排序后的结果。
字符串长度排序c语言解析:首先需要包含必要的头文件,然后定义一个函数用于比较两个整数的大小,接着在主函数中获取用户输入的整数,调用排序函数进行排序,最后输出排序后的结果。
代码如下:
```c
#include <stdio.h>
int compare(const void *a, const void *b) {
return (*(int *)a - *(int *)b);
}
int main() {
int n, i;
printf("请输入整数个数:");
scanf("%d", &n);
int arr[n];
printf("请输入%d个整数:", n);
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
int choice;
printf("请选择排序方式(1-升序,2-降序):");
scanf("%d", &choice);
if (choice == 1) {
qsort(arr, n, sizeof(int), compare);
} else if (choice == 2) {
qsort(arr, n, sizeof(int), compare);
for (i = 0; i < n / 2; i++) {
int temp = arr[i];
arr[i] = arr[n - 1 - i];
arr[n - 1 - i] = temp;
}
} else {
printf("无效的选择!
");
return 1;
}
printf("排序后的整数为:");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("
");
return 0;
}
```
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论