| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 417 人关注过本帖
标题:问题想不明白,求高手指点!
取消只看楼主 加入收藏
z364172655
Rank: 2
等 级:论坛游民
帖 子:22
专家分:38
注 册:2011-12-8
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:1 
问题想不明白,求高手指点!
#include<stdio.h>
#include<string.h>
int main()
{
    int a[8],b[8];
    //int i,j;
    int i;
    for(i=0;i<8;i++)
    {
        printf("Enter the %d word\n",i+1);
        scanf("%d",&a[i]);
    }
   /*for(j=7,i=0;j>=0,i<8;j--,i++)
    {
        b[j]=a[i];
        printf("%d\n",b[j]);
    }*/
    for(i=8;i!=0;i--)
    {
        b[8-i]=a[i];
        printf("%d\n",b[8-i]);
    }
    return 0;
}
执行输出结果如下图:
图片附件: 游客没有浏览图片的权限,请 登录注册

怎么会多出一行1245120的呢?用屏蔽的那段代码由不会出现这样的问题,求解释!!!
搜索更多相关主题的帖子: include Enter return 
2011-12-09 14:55
z364172655
Rank: 2
等 级:论坛游民
帖 子:22
专家分:38
注 册:2011-12-8
收藏
得分:0 
以下是引用hczsea在2011-12-9 15:12:22的发言:

for(i=8;i!=0;i--)
    {
        b[8-i]=a;
        printf("%d\n",b[8-i]);
    }
这个循环中有问题,第一次,i=8时,执行的是b[0]=a[8];这就是问题,a只有0-7;
所以改为b[8-i]=a;
谢谢了,确实是这个问题!
2011-12-09 16:08
快速回复:问题想不明白,求高手指点!
数据加载中...
 
   



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

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