注册 登录
编程论坛 C++教室

在c语言中,怎样利用调用函数,反向输出一个整数

liujianbing 发布于 2010-04-01 09:42, 4080 次点击
在c语言中,怎样利用调用函数,反向输出一个整数
4 回复
#2
秀痘魔导士2010-04-01 09:47
程序代码:
#include <stdio.h>
#define MAXSIZE 1000
int main()
{
char data[MAXSIZE];
int size=0;
printf("请输入你要输入的整数的位数: ");
scanf("%d",&size);
printf("输入%d位整数",size);
for(int i=0;i<size+1;i++)
scanf("%c",&data[i]);
for(i=size;i>0;i--)
{
printf("%c,",data[i]);
}
return 0;
}
#3
hahayezhe2010-04-01 10:02
首先 因为不知道 这个整数到底有多大
所以你得判断i 的位数 比如
int b = 1;
    while(i>10)
    {    i = i/10;
    b++;
    }//i为你输入的整数 b为i的位数 知道位数后好求了吧
或者你直接用递归来显示,
void fn(int n)
{
    int b;
    if(n<10)
    {    printf("%d",n);
    return;
    }
    b=n%10;
    printf("%d\n",b);
    fn(n=n/10);
}

又或者用循环嵌套函数来做
至于做法 自己去想吧

#4
apull2010-04-03 15:17
输入的整数可以使用字符串保存,这就类似于字符串的反向输出了。
有库函数可以搞定char *strrev(char *s);
#5
one_june2010-04-04 15:14
#include<iostream>
using namespace std;
int main()
{
    int n,right_digit,sum(0);
    cout<<"enter the number:";
    cin>>n;
    sum+=n;
    cout<<"the sum is:"<<sum<<endl;
    cout<<"the number in reverse order is:";
    do
    {
    right_digit=n%10;
    cout<<right_digit;
        n=n/10;
    }
    while(n!=0);
    cout<<endl;
}


[ 本帖最后由 one_june 于 2010-4-4 15:31 编辑 ]
1