C 语言:按姓名升序排序自定义数据结构的实现
以下是使用 C 语言实现对给定数据结构按照 `name` 升序排序的示例代码: ```c #include <stdio.h> #include <string.h> typedef struct { int iindex; char strname[32]; char strphone[9]; } datastruct_t; // 比较函数用于 qsort int compare(const void *a, const void *b) { datastruct_t *dataA = (datastruct_t *)a; datastruct_t *dataB = (datastruct_t *)b; return strcmp(dataA->strname, dataB->strname); } int main() { datastruct_t data[] = { {1,"david","555-2685"}, {2,"cuppone","555-0039"}, {3,"autogrill","555-1238"}, {4,"ciakki","555-6658"}, {5,"elisa","555-9275"}, {6,"anna","555-2233"}, {7,"tenerone","555-1111"}, {8,"ufficio","555-9801"}, {9,"bruno","555-2983"}, {10,"laura","555-6697"}, {11,"antonio","555-1234"}, {12,"anna","555-0001"}, {13,"giulio","555-3456"}, {14,"zuzzicasa","555-8810"}, {15,"jasmina","555-7910"} }; int n = sizeof(data) / sizeof(data[0]); qsort(data, n, sizeof(datastruct_t), compare); for (int i = 0; i < n; i++) { printf("%d, %s, %s\n", data[i].iindex, data[i].strname, data[i].strphone); } return 0; } ``` 在上述代码中,定义了一个比较函数 `compare` 用于 `qsort` 函数的排序依据,然后在 `main` 函数中使用 `qsort` 对数据进行排序,并打印排序后的结果。 ######[AI写代码神器 | 575点数解答 | 2024-08-28 10:55:59]
- C语言实现多班级学生信息管理系统:含增删改查与多样排序功能(GPT | 2547点数解答 | 2024-12-15 22:08:58)363
- C语言实现学生信息管理系统:含增删改查与多种排序功能(GPT | 6408点数解答 | 2024-12-15 22:10:03)354
- C 语言:快速实现 5 个学生信息录入、按成绩升序排序并输出!(字节豆包 | 373点数解答 | 2024-10-30 00:37:20)416
- C语言实现:输入5名学生信息并按成绩升序排序输出(字节豆包 | 354点数解答 | 2024-10-30 18:45:58)360
- C语言:输入5个学生信息,按成绩升序排序并输出(字节豆包 | 373点数解答 | 2024-10-31 19:49:58)357
- C语言:输入5名学生信息并按成绩升序排序输出(字节豆包 | 326点数解答 | 2025-01-01 20:11:47)350
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)352
- C++ 实现旋律类型判断:根据 7 个音符顺序输出升序、降序或混合(字节豆包 | 582点数解答 | 2026-03-21 19:41:16)13
- C++实现二进制转八进制及旋律类型判断(字节豆包 | 629点数解答 | 2026-03-21 19:50:41)21
- C++ 实现学生成绩管理系统:含代码及额外逻辑注意点(字节豆包 | 1494点数解答 | 2024-12-12 11:56:50)279
- Python 实现学生成绩管理程序:功能丰富且异常处理周全(字节豆包 | 1203点数解答 | 2024-12-12 11:57:52)255
- C++ 实现学生成绩管理系统:功能全解与异常处理要点(字节豆包 | 1860点数解答 | 2024-12-12 11:58:41)307