[英]How do I get the printf at the end of do while loop to be executed? it just skips it
#include <cs50.h>
#include <stdio.h>
int main(void)
{
int min;
do
{
printf("Minutes: ");
min = get_int();
}
while(min <= 0);
return 0;
printf("Bottles: %i\n", min * 12);
}
好的,我真的很新c。 代码应该像这样工作:如果用户键入一个负整数,它将继续请求整数,否则它应该在结束时运行printf语句,但这不会发生。 有人能帮助我吗?
移动return 0;
printf
函数后的行,因为return 0;
让你的申请完成。 - >所以没有printf("Bottles: %i\\n", min * 12);
会被称为。
int main(void)
{
int min;
do
{
printf("Minutes: ");
min = get_int();
}
while(min <= 0);
printf("Bottles: %i\n", min * 12);
// Change the position of return
return 0;
}
你是C的新人,
return 0;
这意味着它在执行程序之后将返回0值并退出main()函数。 返回0后不会执行任何操作;
所以对于你的情况,行printf("Bottles: %i\\n", min * 12);
未执行,因为此行在返回0后写入; 声明。
所以在返回0之前放入该行; 你的代码应该运行正常!
改变立场
返回0;
从几个使用返回,一个是返回使用打破功能
在这里你的回报0; 声明破坏您的主要方法并滑动以下语句。
从现在开始,养成使用return 0的习惯; 在代码的最后
像这样
int main(void)
{
int min;
do
{
printf("Minutes: ");
min = get_int();
}
while(min <= 0);
printf("Bottles: %i\n", min * 12);
return 0; // always use before the right parenthesis of main function
}
快乐的编码
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.