sort.c

来自「小型的学生成绩管理程序 用数组来设计的 有查询和检索等功能」· C语言 代码 · 共 43 行

C
43 行
字号
#include "student.h"
void sortInfo(void)
{
	char str[5];
	int i,j;
	StuInfo tmps;
	if (numStus==0)
	{
		printf("没有可供排序的记录!");
		return;	
	}
	printf("请输入您希望进行排序的方式:");
	printf("1.按学号进行升序排序\n");
	printf("2.按学号进行降序排序\n");
	printf("3.按名称进行升序排序\n");
	printf("4.按名称进行降序排序\n");
	printf("5.按名次进行升序排序\n");
	printf("6.按名次进行降序排序\n");
	printf("7.按错了,我并不想进行排序\n");
	gets(str);
	if (str[0]<'1'||str[0]>'6')
		return;
	for(i=0;i<numStus-1;i++)
	{
		for(j=i+1;j<numStus;j++)
		{
			if((str[0]=='1'&&strcmp(records[i].number,records[j].number)>0)||
				(str[0]=='2'&&strcmp(records[i].number,records[j].number)<0)||
				(str[0]=='3'&&strcmp(records[i].name,records[j].name)>0)||
				(str[0]=='4'&&strcmp(records[i].name,records[j].name)<0)||
				(str[0]=='5'&&records[i].index>records[j].index)||
				(str[0]=='6'&&records[i].index<records[j].index))
			{
				copyRecord(&tmps,&records[i]);
				copyRecord(&records[i],&records[j]);
				copyRecord(&records[j],&tmps);
			}
		}
	}
	printf("排序已经完成\n");
	savedTag=1;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?