c语言如何自动编号函数 c语言编写一个自动选号程序( 四 )


/*找到最后 , 没有重复*/if(i==n){
*(p+i)=t;
printf("添加后的记录:\n");printf("\n学号姓名电话号码\n");for(i=0;in+1;i++)
printf("%15s%15s%15s\n",(p+i)-num,(p+i)-name,p[i].tel);break;}
}
while(c=='y'||c=='Y');return n+1;}
int mydelete(struct student*p,int n)/*删除学生信息*/{
int i,x;
char c,nm[10],nam[10];
printf("删除前的记录:\n");printf("\n学号姓名电话号码\n");for(i=0;in;i++)
printf("%15s%15s%15s\n",p[i].num,p[i].name,p[i].tel);printf("按学号删除(h),还是按姓名删除(m)?");c=getchar();
if(c=='h'||c=='H'){
printf("\n请输入要删除记录的学号:");gets(nm);
for(x=0;xn;x++)
{
gets(t.num);
}
while(strcmp(t.num,"")==0);/*学号不能为空*/printf("请输入新记录的姓名:");gets(t.name);
printf("请输入新记录的电话号码:");gets(t.tel);
for(i=0;in;i++)
if(strcmp(t.num,(p+i)-num)==0||strcmp(t.tel,(p+i)-tel)==0){
printf("学号或电话号码重,要重新输入吗(Y/N)?");c=getchar();putchar ('\n');break;}
/*找到最后 , 没有重复*/if(i==n){
*(p+i)=t;
printf("添加后的记录:\n");printf("\n学号姓名电话号码\n");for(i=0;in+1;i++)
printf("%15s%15s%15s\n",(p+i)-num,(p+i)-name,p[i].tel);break;}
}
while(c=='y'||c=='Y');return n+1;}
int mydelete(struct student*p,int n)/*删除学生信息*/{
int i,x;
char c,nm[10],nam[10];
printf("删除前的记录:\n");printf("\n学号姓名电话号码\n");for(i=0;in;i++)
printf("%15s%15s%15s\n",p[i].num,p[i].name,p[i].tel);printf("按学号删除(h) , 还是按姓名删除(m)?");c=getchar();
if(c=='h'||c=='H'){
printf("\n请输入要删除记录的学号:");gets(nm);
for(x=0;xn;x++)
int j,i,k;char c1,c2;
struct studenttemp;
printf("\n排序前的记录:\n");printf("\n学号姓名电话号码\n");for(i=0;in;i++)
printf("%15s%15s%15s\n",p[i].num,p[i].name,p[i].tel);printf("\n按学号排序(h),还是按姓名排序(m)?");c1=getchar();
if(c1=='h'||c1=='H'){
printf("\n按升序排序(s),还是按降序排序(j)?");c2=getchar();/*升序*/
if(c2=='s'||c2=='S'){
for(i=0;in-1;i++){
k=i;
for(j=i;jn;j++)
if(strcmp(p[k].num,p[j].num)0)
k=j;
temp=p[k];p[k]=p[i];p[i]=temp;
}
printf("\n排序后的记录:\n");printf("\n学号姓名电话号码\n");for(i=0;in;i++)
printf("%15s%15s%15s\n",p[i].num,p[i].name,p[i].tel);}
else if(c2=='j'||c2=='J')/*降序*/{
for(i=0;in-1;i++){
k=i;
for(j=0;jn;j++)
if(strcmp(p[k].num,p[j].num)0)
k=j;
temp=p[k];p[k]=p[i];p[i]=temp;
}
printf("排序后的记录:\n");printf("\n学号姓名电话号码\n");for(i=0;in;i++)
printf("%15s%15s%15s\n",p[i].num,p[i].name,p[i].tel);}
else printf("\n非法字符\n");}
else if(c1=='m'||c1=='M')/*按姓名排序*/{
printf("\n按升序排序(s),还是按降序排序(j)?");c2=getchar();
if(c2=='s'||c2=='S'){
for(i=0;in-1;i++){
k=i;
for(j=0;jn;j++)
if(strcmp(p[k].name,p[j].name)0)
k=j;
temp=p[k];p[k]=p[i];p[i]=temp;}
printf("排序后的记录:\n");printf("\n学号姓名电话号码\n");for(i=0;in;i++)
printf("%15s%15s%15s\n",p[i].num,p[i].name,p[i].tel);
}
else if(c2=='j'||c2=='J')/*降序*/{
for(i=0;in-1;i++){
k=i;
for(j=i;jn;j++)
if(strcmp(p[k].name,p[j].name)0)
k=j;
temp=p[k];p[k]=p[i];p[i]=temp;
}
printf("排序后的记录:\n");printf("\n学号
姓名电话号码\n");
for(i=0;in;i++)
printf("%15s%15s%15s\n",p[i].num,p[i].name,p[i].tel);}
else printf("\n非法字符c语言如何自动编号函数!\n");}
else printf("\n非法字符!\n");}
int loadinfo(struct student*p,int n)/*载入通讯录信息*/{

推荐阅读