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

为提取4位数字各位的C程序添加输入位数校验的实现方法

实现思路

  • 合法的4位正整数取值范围为1000 ~ 9999,在获取用户输入后先做范围校验
  • 若输入值不在上述区间内,直接输出指定提示后终止程序
  • 若输入符合要求,再执行原有的数位拆分、结果打印逻辑

若需要支持负4位整数的校验,可先调用abs()函数取输入值的绝对值再判断,需额外引入stdlib.h头文件。

修改后完整代码

#include<stdio.h>

int main(){

    int a, th, h, t, u;
    printf("Enter a 4-digit number: ");
    scanf("%d", &a);

    // 新增4位数字校验逻辑
    if (a < 1000 || a > 9999) {
        printf("Only 4-digits are allowed.\n");
        return 0;
    }

    u = a%10;
    t = (a/10)%10;
    h = (a/100)%10;
    th = (a/1000);

    printf("\nThousands = %d, Hundreds = %d, Tens = %d, Units = %d\n", th, h, t, u);

    return 0;
}

内容的提问来源于stack exchange,提问作者Rohan Singh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 11:18:03