VS Code中scanf函数异常导致代码运行缓慢且无法执行的问题求助
解决你的scanf阻塞及VS Code运行问题
我一眼就看到你代码里的核心问题了——scanf的参数写错了!这直接导致程序卡死,咱们先把这个搞定:
代码错误修复
你的scanf("%d");少了变量的地址参数,scanf需要知道把输入的值存在哪里,必须传入&num(num的内存地址)。修正后的代码应该是这样:
#include <stdio.h> int main(){ int num; printf("Enter the number \n"); scanf("%d", &num); // 这里加上&num,告诉scanf要把输入存在哪个内存位置 printf("Divisibility test returns %d\n", num % 97); return 0; }
这个错误会让scanf试图访问非法内存,要么直接崩溃,要么陷入无限等待(就是你说的“运行耗时极久”),修正后程序就能正常读取输入并执行后续逻辑了。
VS Code中scanf无法工作的额外解决办法
如果修正代码后还是有问题,那大概率是VS Code的终端配置问题:
- 打开launch.json文件(可以通过“运行和调试”面板里的齿轮图标打开),找到
"externalConsole"选项,把它设为true。这样程序运行时会弹出系统自带的控制台窗口,输入就能正常响应了。 - 如果你习惯用VS Code的集成终端,试试在
printf后面加一句fflush(stdout);,确保提示信息能及时显示出来,避免你以为程序没反应而没有输入内容。
按上面的步骤来,你的问题应该就能彻底解决啦!
内容的提问来源于stack exchange,提问作者Kartik9000
相关产品推荐
相关产品推荐

