namespace 前20项的和及平均数
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("数列1、1、2、3、5、8、13、21、34、56……的前20项的和为:");
int[] sum = new int[20];
int str = 0;
for (int i = 0; i < 9; i++)
{
sum[0] = 1;
sum[1] = 1;
sum[i + 2] = sum[i + 1] + sum[i];
str += sum[i];
}
Console.WriteLine(str);
Console.ReadLine();
}
}
}出现的问题为“索引超出了数组界限(确保列表中的最大索引小于列表索引)”
我是新手,不知道是哪里写错了,望各位大哥指点指点……
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("数列1、1、2、3、5、8、13、21、34、56……的前20项的和为:");
int[] sum = new int[20];
int str = 0;
for (int i = 0; i < 9; i++)
{
sum[0] = 1;
sum[1] = 1;
sum[i + 2] = sum[i + 1] + sum[i];
str += sum[i];
}
Console.WriteLine(str);
Console.ReadLine();
}
}
}出现的问题为“索引超出了数组界限(确保列表中的最大索引小于列表索引)”
我是新手,不知道是哪里写错了,望各位大哥指点指点……
namespace 前20项的和及平均数
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("数列1、1、2、3、5、8、13、21、34、56……的前20项的和为:");
int[] sum = new int[20];
int str = 0;
sum[0] = 1;
sum[1] = 1;
for (int i = 0; i < 18; i++)
{
sum[i + 2] = sum[i + 1] + sum[i];
str += sum[i];
}
Console.WriteLine("Total:" + str);
Console.WriteLine("Average:" + str / 20);
Console.ReadLine();
}
}
}斐波那契数列吧,应该这样,你给的那个代码运行没问题,不过不是前20
namespace 前20项的和及平均数
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("数列1、1、2、3、5、8、13、21、34、56……的前20项的和为:");
int[] sum = new int[20];
int str = 0;
sum[0] = 1;
sum[1] = 1;
str += 2;
for (int i = 0; i < 18; i++)
{
sum[i + 2] = sum[i + 1] + sum[i];
str += sum[i + 2];
}
Console.WriteLine("Total:" + str);
Console.WriteLine("Average:" + str / 20);
Console.ReadLine();
}
}
}不好意思,打错了……应该是这个
sum[0] = 1;
sum[1] = 1;最好拿到循环外