注册 登录
编程论坛 C语言论坛

如果输入的姓名没有,要怎然重新进入这个循环呢

小白a 发布于 2021-01-03 10:01, 1414 次点击
case 1:                                  //功能一:查找
    printf ("请输入您要查找的联系人姓名:");
    scanf ("%s",namex);
 for (i=0;i<n;i++)
 {
  if (strcmp(namex,persons[i].name)!=0)
     {
     printf ("此通讯录中没有您输入的人,请重新输入:\n");
     }
  else if (strcmp(namex,persons[i].name)==0)
  {
    printf ("\n");
    printf ("姓名:%s\n",persons[i].name);
    printf ("生日:%d.%d.%d\n",persons[i].birth.year,persons[i].birth.month,persons[i].birth.day);
    printf ("联系电话:");
    puts(persons[i].phonenumber);
    printf ("住址:");
    puts(persons[i].address);
    printf ("\n");
    break;
  }
 }
 break;
3 回复
#2
do8do8do82021-01-03 10:06
再加一个循环,让用户选择继续或者离开。
#3
小白a2021-01-03 13:07
回复 2楼 do8do8do8
具体怎么加循环
#4
apull2021-01-03 20:48
程序代码:

int cmprst;
while(1)
{
    printf ("请输入您要查找的联系人姓名:");
    scanf ("%s",namex);
    if(strcmp(namex,"-1")==0)break;

    for (i=0;i<n;i++)
    {
        cmprst = strcmp(namex,persons[i].name);
        if (cmprst==0)
        {
            printf ("\n姓名:%s\n",persons[i].name);
            printf ("生日:%d.%d.%d\n",persons[i].birth.year,persons[i].birth.month,persons[i].birth.day);
            printf ("联系电话:");
            puts(persons[i].phonenumber);
            printf ("\n住址:");
            puts(persons[i].address);
            printf ("\n");
            break;
        }
    }
    if (cmprst ==0)   
        break;
    printf ("此通讯录中没有您输入的人,请重新输入:\n");
}


[此贴子已经被作者于2021-1-3 20:54编辑过]

1