模擬EXCEL排序

2021-08-14 09:49:52 字數 1044 閱讀 1550

excel可以對一組紀錄按任意指定列排序。現請編寫程式實現類似功能。

輸入的第一行包含兩個正整數n(

≤10​

5​​) 和

c,其中

n是紀錄的條數,

c是指定排序的列號。之後有 

n行,每行包含一條學生紀錄。每條學生紀錄由學號(6位數字,保證沒有重複的學號)、姓名(不超過8位且不包含空格的字串)、成績([0, 100]內的整數)組成,相鄰屬性用1個空格隔開。在n

行中輸出按要求排序後的結果,即:當c=

1時,按學號遞增排序;當c=

2時,按姓名的非遞減字典序排序;當c=

3時,按成績的非遞減排序。當若干學生具有相同姓名或者相同成績時,則按他們的學號遞增排序。

3 1

000007 james 85

000010 amy 90

000001 zoe 60

000001 zoe 60

000007 james 85

000010 amy 90

/*

堆排序*/#include using namespace std;

typedef struct node

}node;

node stu[101000];

int n, method;

void input()

bool cmp(node stu1, node stu2)

if(method == 2)

}if(method == 3)

return false;

}void heapadjust(int s, int m)

else

}//printf("***%s %s %d %d\n", stu[0].id, stu[0].name, stu[0].score, s);

stu[s] = stu[0];

}void heapsort()

}int main()

模擬EXCEL排序

excel可以對一組紀錄按任意指定列排序。現請編寫程式實現類似功能。輸入格式 輸入的第一行包含兩個正整數n 10 5 和c,其中n是紀錄的條數,c是指定排序的列號。之後有 n行,每行包含一條學生紀錄。每條學生紀錄由學號 6位數字,保證沒有重複的學號 姓名 不超過8位且不包含空格的字串 成績 0,10...

7 37 模擬EXCEL排序

7 37 模擬excel排序 25 分 excel可以對一組紀錄按任意指定列排序。現請編寫程式實現類似功能。輸入的第一行包含兩個正整數n 10 5 和c,其中n是紀錄的條數,c是指定排序的列號。之後有 n行,每行包含一條學生紀錄。每條學生紀錄由學號 6位數字,保證沒有重複的學號 姓名 不超過8位且不...

結構體排序 模擬EXCEL排序

excel可以對一組紀錄按任意指定列排序。現請編寫程式實現類似功能。輸入格式 輸入的第一行包含兩個正整數n 10 5 和c,其中n是紀錄的條數,c是指定排序的列號。之後有 n行,每行包含一條學生紀錄。每條學生紀錄由學號 6位數字,保證沒有重複的學號 姓名 不超過8位且不包含空格的字串 成績 0,10...