标题:输入一个整数要求逆向输出,例如:输入123,输出321,通过编译,结果是不对.
只看楼主
bianfeng
Rank: 1
等 级:新手上路
帖 子:199
专家分:0
注 册:2007-11-28
结帖率:0
 问题点数:0 回复次数:2 
输入一个整数要求逆向输出,例如:输入123,输出321,通过编译,结果是不对.
我只是想用我的思路用指针来实现.不知道我的思路可行不..思考好久没有想出来.请大家指下我的错误在哪,改一下程序就行.


//将组数中的数,逆向输出,如:输入1 2 3 输出3 2 1
#include "stdio.h"
#define M 5
int main()
{
    int ad[M],i,*k,*m;
    void swap(int* a,int* b);
    k=ad,m=ad+M-1;    //k指向数组首,m指向数组尾.
    for(i=0;i<M;i++)  //给数组赋值
        scanf("%d",k++);
    k=ad;            
    swap(k,m); //交换数组各元素,k指向数组首,m指向数组尾.
    while(k<=m)  //输出数组
    {
        printf("%-4d",*k++);
    }
    return 0;
}
void swap(int* c,int* b)
{
    int t;
    while(c>b)
    {
        t=*c;
        *c=*b;
        *b=t;
        c++,b--;
    }    
}

[[it] 本帖最后由 bianfeng 于 2008-3-24 17:00 编辑 [/it]]
搜索更多相关主题的帖子: 整数 int 输出 逆向 
2008-03-24 16:57
bianfeng
Rank: 1
等 级:新手上路
帖 子:199
专家分:0
注 册:2007-11-28
得分:0 
while(c>b)
改成while(c<b)
就对了..疏忽啊
2008-03-24 17:21
hoodlum1980
Rank: 2
来 自:浙江大学
等 级:论坛游民
威 望:2
帖 子:289
专家分:23
注 册:2008-2-24
得分:0 
只是这个要求的话strrev就好了
2008-03-25 01:35



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




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

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