怎么讲int*中的数据从小到大排序
时间: 2024-05-13 12:15:09 浏览: 11
可以使用标准库中的 `qsort` 函数来对 `int` 类型的指针进行排序。具体步骤如下:
1. 定义一个比较函数,用于指定排序的方式。可以使用以下函数:
```c
int cmp(const void* a, const void* b) {
return (*(int*)a - *(int*)b);
}
```
2. 调用 `qsort` 函数进行排序,示例代码如下:
```c
int arr[] = {2, 1, 3, 5, 4};
int len = sizeof(arr) / sizeof(int);
qsort(arr, len, sizeof(int), cmp);
```
这样就可以对 `arr` 数组中的元素进行排序,结果为 {1, 2, 3, 4, 5}。
相关问题
c语言结构体数据从小到大排序代码
以下是一个简单的结构体数据从小到大排序的 C 语言代码:
```c
#include <stdio.h>
#include <string.h>
struct student {
char name[50];
int score;
} students[5];
void swap(struct student *xp, struct student *yp) {
struct student temp = *xp;
*xp = *yp;
*yp = temp;
}
void bubbleSort(struct student arr[], int n) {
int i, j;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (arr[j].score > arr[j + 1].score) {
swap(&arr[j], &arr[j + 1]);
}
}
}
}
int main() {
int i;
printf("Please enter the name and score of 5 students: \n");
for (i = 0; i < 5; i++) {
scanf("%s %d", students[i].name, &students[i].score);
}
bubbleSort(students, 5);
printf("Sorted list of students by score:\n");
for (i = 0; i < 5; i++) {
printf("%s %d\n", students[i].name, students[i].score);
}
return 0;
}
```
希望这个代码对你有帮助。如果你还有其它问题,可以继续问我哦。
对数组中的n个数据从小到大排序。c++
可以使用C++标准库中的sort函数进行排序。具体实现如下:
```c++
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int n;
cin >> n;
int arr[n];
// 输入n个数
for(int i = 0; i < n; ++i) {
cin >> arr[i];
}
// 排序
sort(arr, arr + n);
// 输出排序后的结果
for(int i = 0; i < n; ++i) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
在上述代码中,我们先输入了n个数,然后使用sort函数对数组进行排序,最后输出排序后的结果。