//1.根据学号排序`在这里插入代码片`voidsort_by_id(class *input_class){
class *temp = input_class;longlongint t;int i, j;longlongint store[node];for(i =0; i < node; i++){
temp = temp->next;
store[i]= temp->id;}for(i =0; i < node; i++){for(j = i +1; j < node; j++){if(store[j]> store[i]){
t = store[i];
store[i]= store[j];
store[j]= t;}}}printf("学号排序如下:\n");for(i =0; i < node; i++){printf("%lld\n", store[i]);}}
//2.根据分数排序voidsort_by_score(class *input_class){
class *temp = input_class;float t;int i, j;float store[node];for(i =0; i < node; i++){
temp = temp->next;
store[i]= temp->total_score;}for(i =0; i < node; i++)//设置外层循环{for(j = i +1; j < node; j++)//设置内层循环{if(store[j]> store[i])//如果前一个数比后一个数大{
t = store[i];
store[i]= store[j];
store[j]= t;}}}printf("成绩排序如下:\n");for(i =0; i < node; i++){printf("%f\n", store[i]);}}
//3.输出最高分学生voidmax(class *input_class){
class *temp = input_class;float store[node];int i;for(i =0; i < node; i++){
temp = temp->next;
store[i]= temp->total_score;}float max = store[0];for(i =1; i < node; i++){if(store[i]>= max){
max = store[i];}}printf("最高分是%f\n", max);}
//4.输出最低分学生voidmin(class *input_class){
class *temp = input_class;float store[node];int i;for(i =0; i < node; i++){
temp = temp->next;
store[i]= temp->total_score;}float min = store[0];for(i =1; i < node; i++){if(store[i]<= min){
min = store[i];}}printf("最低分是%f\n", min);}
//5.输入学号,判断成绩是否素数voidprime(class *input_class){
class *temp = input_class;printf("输入学生学号进行素数判断:");longlongint id;scanf("%lld",&id);while(temp->next){
temp = temp->next;if(temp->id == id){int score =(int) temp->total_score;int i;int judge =0;for(i =2; i < score; i++){if(score % i ==0){
judge++;}}if(judge ==0){printf("这个学生的成绩是素数\n");}else{printf("这个学生的成绩不是素数\n");}}}}
intmain(){int origin_num;printf("输入初始化人数:");scanf("%d",&origin_num);
class *test =init(origin_num);prints(test);printf("Okay, data upload finished. What do you what to do next? You can enter a number \n""to tell me.\n");int choose;printf("1 add\n""2 delete\n""3 search\n""4 sort by id\n""5 sort by score\n""6 best score\n""7 worst score\n""8 prime judge\n""9 encrypt\n""10 analyze\n""0 exit\n");scanf("%d",&choose);switch(choose){case1:add(test);prints(test);break;case2:delete(test);prints(test);break;case3:search(test);break;case4:sort_by_id(test);break;case5:sort_by_score(test);break;case6:max(test);break;case7:min(test);break;case8:prime(test);break;case10:analyze();break;case0:break;}printf("Do you still need my service? You can enter a number to tell me.\n");int choose1;while(1){printf("1 add\n""2 delete\n""3 search\n""4 sort by id\n""5 sort by score\n""6 best score\n""7 worst score\n""8 prime judge\n""9 encrypt\n""10 analyze\n""0 exit\n");scanf("%d",&choose1);switch(choose1){case1:add(test);prints(test);break;case2:delete(test);prints(test);break;case3:search(test);break;case4:sort_by_id(test);break;case5:sort_by_score(test);break;case6:max(test);break;case7:min(test);break;case8:prime(test);break;case10:analyze();break;case0:return0;}}return0;}