gpt4 book ai didi

c - 程序跳过部分代码

转载 作者:行者123 更新时间:2023-11-30 19:58:44 25 4
gpt4 key购买 nike

我的c代码中一直存在一个问题,每当我获得输入并调用函数时,它都会跳过函数的第一部分并执行下一部分。

编辑:问题已解决,此代码工作完全正常。

使用 while((c= getchar()) != '\n' && c != EOF);全部输入后

void Fruit(void); 
void Fruit2(void);
void Chocolate(void);

int choice=0;
char fruit[32];
char fruit2[32];
char Choco[32];
int c;
int main()
{
printf("Which food do you prefer, 1=Fruit?, 2=Chocolate?");
scanf("%d",&choice);
while((c = getchar()) != '\n' && c != EOF);

if(choice==1)
{
Fruit();
}
else if(choice==2)
{
Chocolate();
}
else
{
printf("Pick one");
}
}


void Fruit(void)
{
printf("Enter your favourite fruit?\n");
gets(fruit);
while((c= getchar()) != '\n' && c != EOF);
printf("What is your second most favourite fruit?\n\n");
gets(fruit2);
while((c = getchar()) != '\n' && c != EOF);
system("cls");
printf("You like %s's and %s's ",fruit,fruit2);
getch();
}

void Chocolate(void)
{
printf("Enter your favourite chocolate bar\n\n");
gets(Choco);
while((c = getchar()) != '\n' && c != EOF);
system("cls");
printf("You like %s",Choco);
getch();
}

最佳答案

而不是

    printf("You like %s's and %s's ");

你应该有

     printf("You like %s's and %s's ", fruit, fruit2);

第二个打印语句也类似。

关于c - 程序跳过部分代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22576614/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com