永发信息网

C#中for语言,我经常遇到的一个问题

答案:2  悬赏:40  手机版
解决时间 2021-05-10 14:30
  • 提问者网友:沉默的哀伤
  • 2021-05-09 18:21

学习C#没多久,但是经常在输出的时候,会出现一个问题:输出结果中,总是没法显示第一个数。 比如猴子吃桃问题,猴子第一天吃了摘来的桃子的一半多一个,第二天吃了剩下的一半多一个,第十天吃的时候发现桃子还剩一个。 我的做法:


            Console.WriteLine("猴子吃桃");

            int i, j = 1;
            int sum=0;
            Console.WriteLine("从第九天到一天吃前的桃子是:");
            for (i = 1; i <10; i++)
            {
                sum += j;
                j = 2 * j + 2;
                Console.Write("{0}\t",j);              
            }
            Console.WriteLine();
            Console.WriteLine("猴子第一天总共摘了{0}个桃子",sum);

 

输出的结果是: 第十天吃前是1个。但是结果中,我总是没办法让它自己显示

高手帮忙,谢谢

 

最佳答案
  • 五星知识达人网友:梦中风几里
  • 2021-05-09 19:59

加一句话  Console.Read();,让屏幕等待:


完整的,正确的代码:


using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;


namespace t1
{
   class Program
   {
    static void Main(string[] args)
    {
    Console.WriteLine("猴子吃桃");


    int i, j = 1;
    int sum = 0;
    Console.WriteLine("从第九天到一天吃前的桃子是:");
    for (i = 1; i < 10; i++)
    {
    sum += j;
    j = 2 * j + 2;
    Console.Write("{0}\t", j);
    }
    Console.WriteLine();
    Console.WriteLine("猴子第一天总共摘了{0}个桃子", sum);


    Console.Read();


    }
   }
}

全部回答
  • 1楼网友:归鹤鸣
  • 2021-05-09 20:05

你的顺序不对,,,sum+= j;应该放在j = 2 * j + 2;后面啊。。。。

for (i = 1; i <10; i++)
    {

    j = 2 * j + 2;
    sum += j;
    Console.Write("{0}\t",j);    
    }

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯