C语言,当x值为127,100~999之间各位上数字为127的整数。

C语言,当x值为127,100~999之间各位上数字为127的整数。

这个问题不难, 一个循环+一个函数(计算每位数字之和)即可. 不过你的问题描述似乎不完整. 100~999, 每个数的数字之和的范围就是1~27. 你的x有什么具体的要求? 下面是一个范例, 根据需要自己修改吧...

#include <stdio.h>
 
unsigned int GetDigitSum(unsigned int num);
 
int main(int argc, char** argv) 
{
    unsigned int iter, sum_digits, l_count = 0;
    const unsigned int IT_MIN = 100;
    const unsigned int IT_MAX = 999;
    const unsigned int S_MIN = 1;
    const unsigned int S_MAX = 27;
     
    for (iter = IT_MIN; iter <= IT_MAX; ++iter)
    {
        sum_digits = GetDigitSum(iter);
        //if ( (sum_digits >= S_MIN) && (sum_digits <= S_MAX) ) 
        if ( sum_digits == 20 ) // <--- 修改这里为自己的判断标准
        {        
           printf (" %d, digits sum.: %d\n", iter, sum_digits);
           l_count++;
        }
         
    }
    printf("Total: %d\n", l_count);
    return 0;
}
 
unsigned int GetDigitSum(unsigned int num)
{
    unsigned int sum = 0, remainder;
     
    while (num != 0)
    {
        remainder = num % 10;
        sum = sum + remainder;
        num = num / 10;
    }
     
    return sum;
}
温馨提示:答案为网友推荐,仅供参考