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

C语言闰年判断程序如何实现连续多输入直至无剩余输入

C语言闰年判断程序多输入修改方案

你当前的代码仅执行单次输入、判断逻辑,因此处理完一个输入就会直接退出。要实现连续处理多个输入直到所有内容处理完毕,只需通过scanf的返回值控制循环即可:scanf返回值为成功读取的变量个数,当检测到输入流结束(EOF)时会返回小于1的值,以此作为循环终止条件即可。

修改后完整代码

#include <stdio.h>  

int main() 
{  
   int y;  
   // 循环读取输入,只要成功读到整数就执行判断
   while (scanf("%d", &y) == 1) {
       if (y % 400 == 0) {  
          printf("leap\n");  
       }  
       else if (y % 100 == 0) {  
          printf("nonleap\n");  
       }  
       else if (y % 4 == 0) {  
          printf("leap\n");  
       }  
       else {  
          printf("nonleap\n");  
       }
   }  
   return 0;  
}

关键说明

  • 原代码最后一处printf多余传入了变量y,格式化字符串中没有对应占位符,属于冗余参数,已删除
  • 如果是手动输入测试:Windows系统按下Ctrl+Z后回车即可发送EOF终止程序,Linux/macOS系统按下Ctrl+D即可终止
  • 直接通过管道/文件传入输入内容时,程序会自动处理完所有内容后退出,完全匹配你给出的输入输出预期

内容的提问来源于stack exchange,提问作者Fyre Steinfeld

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 07:39:04