将以下代码中的goto语句替换:void alter(){ char name[10]; int n;/*确定当前用户的人数*/ int i; printf("\t\t\t请输入您的姓名:"); scanf("%s",name); for(n=0;n<100;n++) if(u[n].monney==0) break; for(i=0;i<n;i++) if(strcmp(u[i].name,name)==0){ int choice=0; printf("\n\t\t\t1.修改ID\n\t\t\t2.修改用水量\n\t\t\t3.退出\n"); printf("\n\t\t\t请输入您的选择:"); GOTO1:scanf("%d",&choice); switch(choice) { case 1: printf("\n\t\t\t请输入修改后的ID:"); scanf("%s",u[i].ID); break; case 2: printf("\n\t\t\t请输入修改后的用水量:"); scanf("%lf",&u[i].water); break; case 3: break; default: printf("\t\t\t输入错误,请重新输入:"); goto GOTO1; } printf("\n修改成功!\n"); break; } if(i==n) printf("\n\t\t\t没有此用户,您可以选择注册新用户^_^!\n"); }
时间: 2023-08-02 14:09:50 浏览: 121
C#goto语句查询源代码
void alter(){
char name[10];
int n; /*确定当前用户的人数*/
int i;
printf("\t\t\t请输入您的姓名:");
scanf("%s", name);
for (n = 0; n < 100; n++)
if (u[n].monney == 0)
break;
for (i = 0; i < n; i++)
if (strcmp(u[i].name, name) == 0) {
int choice = 0;
printf("\n\t\t\t1.修改ID\n\t\t\t2.修改用水量\n\t\t\t3.退出\n");
printf("\n\t\t\t请输入您的选择:");
while (scanf("%d", &choice) != 1 || choice < 1 || choice > 3) {
printf("\t\t\t输入错误,请重新输入:");
while (getchar() != '\n');
}
switch (choice) {
case 1:
printf("\n\t\t\t请输入修改后的ID:");
scanf("%s", u[i].ID);
break;
case 2:
printf("\n\t\t\t请输入修改后的用水量:");
scanf("%lf", &u[i].water);
break;
case 3:
break;
default:
printf("\t\t\t输入错误,请重新输入:");
break;
}
printf("\n修改成功!\n");
break;
}
if (i == n)
printf("\n\t\t\t没有此用户,您可以选择注册新用户^_^!\n");
}
阅读全文