回 帖 发 新 帖 刷新版面

主题:求救!利用循环结构求100-1000整数个数

在C#环境中利用循环结构while。 do_while,for 
求出100-1000的各位位数之和为5的整数个数!
    列如:
    203=2+0+3=5;
    
    
    请赐教!

回复列表 (共3个回复)

沙发


using System;

namespace ArrayTest
{
    class Program
    {
        private static bool sum5(int n)
        {
            int num = 0;
            int num1 = 0;
            int num2 = 0;
            if (n > 100 && n < 1000)//这个语句可以根据情况可要可不要,我这里可以不要,只是为了写成一个函数而已. 
            {
                num = n / 100;
                num1 = (n - num * 100) / 10;
                num2 =n- num * 100 - num1 * 10;
                num=num+num1+num2;
            }
            if (num == 5)
            {
                return true;
            }
            else
                return false;
        }
        static void Main()
        {
            for (int j = 100; j < 1000; j++)//这个地方和上面一样,只要有一个地方有就可以了
            {
                if (sum5(j))
                    Console.Write("{0}\t", j);
                //else
                //    Console.Write("the sum of the {0} is not 5", givenNum);
            }
            Console.Read();
        }
    }
}
[em12][em12][em12][em12][em72][em72][em72][em72][em62][em43][em72]

板凳


人家要的是个数不是j值啊,不要去数啊你应该用count 方法啊

3 楼

楼主这个问题不难,自己应该先做着试试看再发帖,顺便把符合的值输出了,如果不用的话,就把那句删掉就好了
using System;
namespace xunhuan1
{
    class Program
    {
        static void Main(string[] args)
        {
            int count = 0;
            int bai, shi, ge, sum;
            for (int i = 100; i < 1000; i++)
            {
                bai = i / 100;
                shi = (i - bai * 100) / 10;
                ge = i % 10;
                sum = bai + shi + ge;
                if (sum == 5)
                {
                    count++;
                    Console.WriteLine("{0}", i);
                }
            }
            Console.WriteLine("{0}", count);
            Console.ReadLine();

        }
    }
}

我来回复

您尚未登录,请登录后再回复。点此登录或注册