标题:数组问题
只看楼主
ljj5280
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-5-22
 问题点数:0 回复次数:5 
数组问题
#include<iostream.h>
void main()
{
int A[10],B[10];
int i;
for(i=0;i<10;i++)
{
A[i]=i*2-1;
B[10-i-1]=A[i];
}
for(i=0;i<10; i++)
{
cout<<"A["<<i<<"]="<<A[i]<<endl;
cout<<"B["<<i<<"]="<<B[i]<<endl;
}
}
把这个程序中的第2个for(i=0;i<10; i++)去掉,输出的答案就是错的,为什么了? 第两for(i=0;i<10; i++) ,在程序中是什么意思,不要为什么不可以。 不懂。

#include<iostream.h>
void main()
{
int A[10],B[10];
int i;
for(i=0;i<10;i++)
{
A[i]=i*2-1;
B[10-i-1]=A[i];

cout<<"A["<<i<<"]="<<A[i]<<endl;
cout<<"B["<<i<<"]="<<B[i]<<endl;
}
}
变成这样就错了。
搜索更多相关主题的帖子: include void 
2007-05-22 23:19
kisscjy
Rank: 1
等 级:新手上路
帖 子:217
专家分:0
注 册:2007-4-9
得分:0 

当你去点第二个循环的时候.

程序变成
for(i=0;i<10;i++)
{
A[i]=i*2-1;
B[10-i-1]=A[i];

cout<<"A["<<i<<"]="<<A[i]<<endl;
cout<<"B["<<i<<"]="<<B[i]<<endl;
}

当i=0,1,2,3,4的时候,b[0],b[1],b[2],b[3],b[4]还没有赋值,

所以就会随机输出一个数出来了~~~


每当我一晚写下70,80个程序时,你还真以为,这都是我一个人干的.....不过说真的,其实都是抄书的~~ ^@^
2007-05-23 00:22
ljj5280
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-5-22
得分:0 

还是不懂,可以说的在具体点,举个列。头都大了。

2007-05-23 01:37
独孤风
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-11-7
得分:0 

for(i=0;i<10;i++)
{
A[i]=i*2-1;
B[10-i-1]=A[i];

cout<<"A["<<i<<"]="<<A[i]<<endl;
cout<<"B["<<i<<"]="<<B[i]<<endl;
}

当i=0时,A[i]=-1;而B[10-i-1]=B[9]=-1;
而接下来你就把cout<<"B["<<i<<"]="<<B[i]<<endl 也就是B[0]要輸出了,而这时你还沒对它賦值呢~~~


用心去感受程序的美妙,无忧无虑的探寻精彩.
2007-05-25 21:04
ifeitian
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2007-5-1
得分:0 
回复:(ljj5280)还是不懂,可以说的在具体点,举个列...
for(i=0;i<10;i++)
{
语句 1 A[i]=i*2-1;
语句 2 B[10-i-1]=A[i];
语句 3 cout<<"A["<<i<<"]="<<A[i]<<endl;
语句 4 cout<<"B["<<i<<"]="<<B[i]<<endl;
}
当程序运行时先执行语句1此时A[0]=-1
然后执行语句2得B[9]=A[0]=-1
再执行语句3输出 A[0]=-1
最后执行语句4 目的输出B[0]而此时B[0]还没有赋值所以出错了。

愿如风
2007-05-25 21:08



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-141665-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.058606 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved