gpt4 book ai didi

c - 关于 c 中递归的快速问题

转载 作者:太空宇宙 更新时间:2023-11-04 07:37:59 25 4
gpt4 key购买 nike

我有一个关于递归的问题。我的代码非常简单。看起来像:

void test();

int main(void) {
test();
}

void test() {
char c;
printf("Are you happy?\n");
printf("Enter a y for yes, or an n for no\n");
scanf("%c", &c);

if(c == 'n' ) {
test();
} else {
printf("That's Awesome!");
}
}

我想要它,所以如果你一直按 n,它会再次运行该方法并再次要求你输入,并且会一直重复直到你按 y。这只工作一次,但由于某种原因再次调用该方法后,它会自动打印出 else stmt。有谁知道这里会发生什么?

谢谢!

最佳答案

"%c" 更改为 "%c " 这样它就会吃掉换行符。

更一般地说,使用 scanf 进行用户输入效果不是很好,有很多这样的惊喜。

关于c - 关于 c 中递归的快速问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7368309/

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