求助各位C#大神,小弟初出茅庐,编了个程序有错误,不解呀 求解
static void Main(string[] args){
int i, n, p, X, Y;
int [] Na = new int[] {1,0002,00067,00043,00078,0006,0007,0008, };
int[] Ra = new int[] { };
Console.WriteLine("请输入xyn");
X = int.Parse(Console.ReadLine());
Y = int.Parse(Console.ReadLine());
n = int.Parse(Console.ReadLine());
for (p = 1; p <= (n / (X * Y)); p++)
{
for (int x = 1; x <= X; x++)
{
for (int y = 1; y <= Y; y++)
{
i = 1;
i++;
Console.WriteLine("结果是:" +Ra [i],"=" ,Na[(x - 1) * 600 + y + 6 * (p - 1)]);
}
}
}
Console.ReadLine();
}
这是我编写的程序 我想要这种效果如:Ra[1]=Na[1]=1
Ra[2]=Na[2]=002
Ra[3]=Na[3]=0067......
或者是Ra[1]=1
Ra[2]=002
Ra[3]=0067......
我遇到的问题,当不加Ra[]时,且数组中不加0是能显示出Na来 形如1,2,67...
当加了0之后就显示不出来了,对于Ra中[]的变化更是没有办法 ,难道是用动态数组的知识吗,
还有就是如果想Na数组中有字母,是把Int改成string类型吗? 我是改了并把之后的改成convert.toint样子可还是不行,求大神指点,或写出完整程序, 很急。。!! 谢谢!!!!!
C# String --------------------编程问答-------------------- 我不知道你XY输得什么?你确定Na[(x - 1) * 600 + y + 6 * (p - 1)]不会越界?? --------------------编程问答-------------------- 您好 好像确实会越界 当我输入Console.WriteLine ("请输入xyn");
X = int.Parse(Console.ReadLine());
Y =int.Parse(Console.ReadLine());
n = int.Parse(Console.ReadLine();
int[] Na = new int[] { 1, 2, 3, 4, 6, 8, 9 };
for ( p = 1; p <= (n / (X * Y)); p++)
{
for ( int x = 1; x <= X; x++)
{
for ( int y = 1; y <= Y; y++)
{
Console.WriteLine("结果是:" + Na[(x - 1) * 600 + y + 6 * (p - 1)]);
}
}
}
Console.ReadLine();
运行中跳出来了 说越界了 。。怎么解决呢 --------------------编程问答--------------------
越界超出数组范围了,你就设置你范围就行了 --------------------编程问答-------------------- +1 加个if语句 在你的范围内执行
补充:.NET技术 , C#