新人对着书打的代码,不知道为什么运行不正常。求触帮助OTZ

sinat_36027429 2016-09-16 10:39:35
对着C Primer Plus第五版打的示例程序,用的是VS2012

//第三章3.1示例程序
#include <stdio.h>
int main(void)
{
float weight;
float value;
printf("Are you worth your weight in rhodium?\n");
printf("Let's check it out.\n");
printf("Please enter your weight in pounds:");
scanf_s("%f",&weight);
value = 770 * weight * 14.5833;
printf("Your weight in rhodium is wroth $%.2f.\n",value);
printf("You are easily worth that!If rhodium prices drop,\n");
printf("eat more to maintain your value.\n");
getchar();
return 0;
}

最后的getchar()函数是自己加的,这样运行后,输入了weight后会想没有getchar()一样一闪而过然后关闭程序,后面的出黑粗内容。但是我已经在最后加入了这个函数,为什么还是会一闪而过。在value = 770 * weight * 14.5833;后面加入getchar()函数就可以正常运行?
...全文
112 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Troi 2016-09-19
  • 打赏
  • 举报
回复
在后面添加system("pause")
ooolinux 2016-09-16
  • 打赏
  • 举报
回复
试试: fflush(stdin); getch(); //不显示输入的字符 return 0;
sinat_36027429 2016-09-16
  • 打赏
  • 举报
回复
哦,谢谢,是VS2012出问题了。本地windows调试器不会调试修改后的代码,一直调试的都是之前写错的代码。
paschen 2016-09-16
  • 打赏
  • 举报
回复
可以再加一个getchar 或者用system(“pause”)
paschen 2016-09-16
  • 打赏
  • 举报
回复
getchar接收了scanf_s留下的换行符\n 所以直接退出了

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧