static void Main(string[] args)
{
int totalNum = 0; int[] num = new int[5];
for (int i = 5; i > 0; i–)
{ num[i – 1] = i; }
for (int i = 0; i < num.Length; i += 2)
{ totalNum += num[i] + i; }
Console.WriteLine(totalNum);
Console.ReadKey();
}
解释:第二个for循环计算数组中下标为偶数的元素及其下标的总和,即(0+1)+(2+3)+(5+4),结果等于15
嗯,本人想问的是第一个为什么是0+1,假如说按照第二个for循环来算,第一次循环的时候,i=0,然后是看到了i+=2,最后第一次循环的i结果应该是2,那么应该是(3+2)啊,为什么是(0+1)呢?
{
int totalNum = 0; int[] num = new int[5];
for (int i = 5; i > 0; i–)
{ num[i – 1] = i; }
for (int i = 0; i < num.Length; i += 2)
{ totalNum += num[i] + i; }
Console.WriteLine(totalNum);
Console.ReadKey();
}
解释:第二个for循环计算数组中下标为偶数的元素及其下标的总和,即(0+1)+(2+3)+(5+4),结果等于15
嗯,本人想问的是第一个为什么是0+1,假如说按照第二个for循环来算,第一次循环的时候,i=0,然后是看到了i+=2,最后第一次循环的i结果应该是2,那么应该是(3+2)啊,为什么是(0+1)呢?
解决方案
20
using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int totalNum = 0;
int[] num = new int[5];
for (int i = 5; i > 0; i--)
{
num[i - 1] = i;
Console.Write("num[{0}]={1} ", i - 1, num[i - 1]);
}
Console.WriteLine();
for (int i = 0; i < num.Length; i += 2)
{
totalNum += num[i] + i;
Console.Write("totalNum+={0}+{1}={2} ", num[i], i, totalNum);
}
Console.WriteLine();
Console.WriteLine(totalNum);
Console.WriteLine("................按任意键结束");
Console.ReadKey();
}
}
}
聪明人,不应该过度浪费脑筋。应该把精力用来写出更清晰好用的测试程序上,而不要过度用脑容量去死记硬背。