You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode中C语言输入年龄程序运行无输出的问题求助

解决VSCode中C程序无输出的问题

问题原因及解决方法

1. 标准输出缓冲区未刷新

C语言中printf默认使用行缓冲模式,只有输出内容包含换行符(\n),或者缓冲区被强制刷新时,内容才会显示到终端。你的代码中第一个printf没有换行,导致提示信息滞留在缓冲区,终端看不到输出,误以为程序没有反应。

解决方式有两种:

  • 在printf语句末尾添加换行符:
    printf("Enter your age:\n");
    
  • 在printf后调用fflush(stdout)强制刷新缓冲区:
    printf("Enter your age:");
    fflush(stdout);
    

2. 确认程序是否在等待输入

程序执行到scanf("%d",&age);时会暂停,等待用户输入年龄。如果终端没显示提示信息,你可能没意识到需要输入内容。此时手动输入一个整数并按下回车,程序会继续执行并输出结果。

修改后的完整代码示例

#include<stdio.h>
#include<stdlib.h>

int main()
{
   int age;
   printf("Enter your age:\n"); // 添加换行符刷新缓冲区

   scanf("%d",&age);

   printf("You are %d years old\n",age); // 添加换行符确保输出即时显示

   return 0;
}

内容的提问来源于stack exchange,提问作者Muhammad Ibraheem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 16:23:15