You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
1.7 KiB
83 lines
1.7 KiB
#include"刷新函数和查找函数.c"
|
|
void sort()/*按学号排序*/
|
|
{
|
|
int i,j,s;
|
|
char temp[10];
|
|
for(i=0;i<n-1;i++)
|
|
{
|
|
for(j=n-1;j>i;j--)
|
|
if(strcmp(stu[j-1].id,stu[j].id)>0)
|
|
{
|
|
strcpy(temp,stu[j-1].id);
|
|
strcpy(stu[j-1].id,stu[j].id);
|
|
strcpy(stu[j].id,temp);
|
|
strcpy(temp,stu[j-1].name);
|
|
strcpy(stu[j-1].name,stu[j].name);
|
|
strcpy(stu[j].name,temp);
|
|
strcpy(temp,stu[j-1].sex);
|
|
strcpy(stu[j-1].sex,stu[j].sex);
|
|
strcpy(stu[j].sex,temp);
|
|
strcpy(temp,stu[j-1].birth);
|
|
strcpy(stu[j-1].birth,stu[j].birth);
|
|
strcpy(stu[j].birth,temp);
|
|
strcpy(temp,stu[j-1].add);
|
|
strcpy(stu[j-1].add,stu[j].add);
|
|
strcpy(stu[j].add,temp);
|
|
strcpy(temp,stu[j-1].tel);
|
|
strcpy(stu[j-1].tel,stu[j].tel);
|
|
strcpy(stu[j].tel,temp);
|
|
strcpy(temp,stu[j-1].email);
|
|
strcpy(stu[j-1].email,stu[j].email);
|
|
strcpy(stu[j].email,temp);
|
|
s=stu[j-1].age;
|
|
stu[j-1].age=stu[j].age;
|
|
stu[j].age=s;
|
|
}
|
|
}
|
|
}
|
|
void add() /*插入函数*/
|
|
{
|
|
int i=n,j,flag;
|
|
printf("请输入待增加的学生数:\n");
|
|
scanf("%d",&m);
|
|
do
|
|
{
|
|
flag=1;
|
|
while(flag)
|
|
{
|
|
flag=0;
|
|
printf("请输入第 %d 个学生的学号:\n",i+1);
|
|
scanf("%s",stu[i].id);
|
|
for(j=0;j<i;j++)
|
|
if(strcmp(stu[i].id,stu[j].id)==0)
|
|
{
|
|
printf("已有该学号,请检查后重新录入!\n");
|
|
flag=1;
|
|
break; /*如有重复立即退出该层循环,提高判断速度*/
|
|
}
|
|
}
|
|
printf("请输入第 %d 个学生的姓名:\n",i+1);
|
|
scanf("%s",stu[i].name);
|
|
printf("请输入第 %d 个学生的年龄:\n",i+1);
|
|
scanf("%d",&stu[i].age);
|
|
printf("请输入第 %d 个学生的性别:\n",i+1);
|
|
scanf("%s",stu[i].sex);
|
|
printf("请输入第 %d 个学生的出生年月:(格式:年.月)\n",i+1);
|
|
scanf("%s",stu[i].birth);
|
|
printf("请输入第 %d 个学生的地址:\n",i+1);
|
|
scanf("%s",stu[i].add);
|
|
printf("请输入第 %d 个学生的电话:\n",i+1);
|
|
scanf("%s",stu[i].tel);
|
|
printf("请输入第 %d 个学生的E-mail:\n",i+1);
|
|
scanf("%s",stu[i].email);
|
|
if(flag==0)
|
|
{
|
|
i++;
|
|
}
|
|
}
|
|
while(i<n+m);
|
|
n+=m;
|
|
printf("录入完毕!\n\n");
|
|
sort();
|
|
}
|