void xg()
{
FILE*fp;
int n;
int i;
int k=1;
char xm[10] ;
int g;
printf("请输入想要修改联系人的姓名:\n");
scanf("%s",xm);//%s字符串
if((fp=fopen("C:\\HLY\\JY0608.txt","r"))==NULL)
{
printf("通讯录没有联系人\n");
}
for(i=0;i<n;i++)
{
if(strcmp(xm,s[i].xm)==0)//把str1所指向的字符串和str2所指向的字符串进行比较
{
k=0;
printf("1.姓名\n2.办公电话\n3.家庭电话\n4.移动电话\n5.性别\n6.分组\n7.修改完毕\n请输入您的选项:\n");
scanf("%d",&g);
if(g<1||g>5)
{
printf("请输入正确选项!\n");
}
else if(g==5)
{
break;
}
else
{
switch(g)//允许测试一个变量等于多个值的情况,每个值成为case,且被测试的变量会对每个switch case进行检查
{
case 1:
printf("姓名:");
scanf("%s",s[i].xm);
break;
case 2:
printf("办公电话:");
scanf("%s",s[i].bg);
break;
case 3:
printf("家庭电话:");
scanf("%s",s[i].jt);
break;
case 4:
printf("移动电话:");
scanf("%s",s[i].yd);
break;
case 5:
printf("性别");
scanf("%s",s[i].sex);
break;
case 6:
printf("分组");
scanf("%s",s[i].fenzu);
break;
}
}
}
}
if(k==1)
{
printf("没有找到该联系人!\n");
}
for(i=0;i<n;i++)
{
fprintf(fp,"%s %s %s %s %s %s\n",s[i].xm,s[i].bg,s[i].jt,s[i].yd,s[i].sex,s[i].fenzu);
}
fclose(fp);
}//这只是一部分,是一个c课设,希望大佬能帮我改改,多谢,代码就是能修改数据文本的数据,但是估计有逻辑问题。 |
|
|
|
评论
直达楼层