| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 660 人关注过本帖
标题:逆序存放问题
只看楼主 加入收藏
zfzdhz
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2008-8-21
收藏
 问题点数:0 回复次数:4 
逆序存放问题
想实现数组a[10]逆序存放
但输出还是a[i]
怎么回事呢???

main()
{
 int a[10]={0,1,2,3,4,5,6,7,8,9};
 int n=strlen(a);
 int i;
 for(i=0;i<n/2;i++)
  {
    int ch;
    ch=a[i];
    a[i]=a[n-1];
    a[n-1]=ch;
}
  for(i=0;i<10;i++)
  printf("%d",a[i]);
}
搜索更多相关主题的帖子: 逆序 
2008-09-01 22:03
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
程序代码:
#include<stdio.h>
int main(void)
{
    int a[10]={0,1,2,3,4,5,6,7,8,9};
    int n=9;
    int i,ch;
    for(i=0;i<n;i++,n--)
    {
        ch=a[i];
        a[i]=a[n];
        a[n]=ch;
    }
    for(i=0;i<10;i++)
        printf("%d",a[i]);
    getch();
}

~~~~~
    上面是我更改后的代码,结果正确。下面说说我的一些理解:
    1,致命的错误,n值没有变化,当n值没变化时,它永远代表的只是一个数据,所以是错误的;
    2,strlen 应该是对字符数组来应用的,int型的数组不适用;
    3,代码不规范,格式很不好看。
  
    以上只是我的一家之言,如有不对之处,还望高手解决。
2008-09-01 22:48
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
收藏
得分:0 
这个,我觉得用堆栈可能更简单一些,你们觉得呢?

~~我的明天我知道~~
2008-09-01 23:03
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
LS:是9-i而不是9-1吧?

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-09-02 16:31
快速回复:逆序存放问题
数据加载中...
 
   



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

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