47 對檔案中的結構體陣列進行排序

2021-07-03 03:05:02 字數 903 閱讀 3514

程式通過定義學生結構體變數,儲存了學生的學號、姓名和3門課的成績,所有學生資料均以二進位制方式輸出到檔案中。函式fun的功能是從形參filename所指的檔案中讀取學生資料,並按照學號從小到大排序後,再用二進位制方式白排序後的學生資料輸出到filename所指的檔案中覆蓋原來的內容。

#include#define n 5

typedef struct student

stu;

void fun(char *filename)

err = fopen_s(&fp,filename, "wb");

fwrite(s, sizeof(stu), n, fp);

fclose(fp);

}int main()

,,,, }, ss[n];

int i, j;

file * fp;

err = fopen_s(&fp,"student.dat","wb");

fwrite(t, sizeof(stu), n, fp);

fclose(fp);

printf("\n\nthe original data:\n\n");

for (j = 0;j < n;j++)

fun("student.dat");

printf("\n\nthe data after sorting:\n\n");

err= fopen_s(&fp,"student.dat", "rb");

printf("%d", err);

fread(ss, sizeof(stu), 5, fp);

fclose(fp);

for (j = 0;j < 5;j++)

getchar();

return 0;

}

matble中建立結構體陣列 sort的排序

1 建立結構體陣列 struct在matlab中是用來建立結構體陣列的。通常有兩種用法 s struct field1 field2 這是建立乙個空的結構體,field1,field2是網域名稱稱 s struct field1 values1,field2 values2,這是在建立結構體的時候就...

基礎 結構體 結構體中的柔性陣列

typedef struct test 造成字串與結構體內存是分離的,有時候不利於操作,例如 複製和訪問的時候,需要做些額外操作。char a hello world test stptest test malloc sizeof test strlen a 1 strcpy char stptes...

使用python對檔案中的數值進行累加

問題描述 乙個檔案由若干條記錄組成,記錄的格式為 num1 num2 有時候,需要統計檔案中num1對應的num2的總值。處理問題的思路 用傳說中的python來處理,很方便。幾行 就可以了。處理思路 1 首先定義乙個字典,用於儲存最終的結果,這是因為字典中的key是唯一的特性。2 開啟檔案,按行讀...