c 语言 问题算法

来源:百度知道 编辑:UC知道 时间:2024/06/03 18:01:40
输入一个int 型数据,判断是几位数,并把这个数倒序输出. 例如:123
输出:321

已经作出 判断几位数.
int f(int);
main()
{
int i,j,t;
printf("pls enter the num\n");
scanf("%d",&i);
j =f (i);
printf("%d",j);
}
int f ( int x)

{
int y;
y=0;
while (x>=1)
{
x=x/10;
++y;

}
return (y);
}

倒序输出 没有好的想法 ,求指点.

这个算法很不错啊
只是楼主的代码不太对

#include <stdio.h>

int f(int x)
{
int y=0;

while (x)
{
y=y*10+x%10;
x=x/10;
}
return (y);
}

main()
{
int i,j;

printf("pls enter the num:\n");
scanf("%d",&i);
j =f(i);
printf("%d\n",j);
}

用/和%将其分解各个数位到一个数组中,倒序输出数组就行了

main()
{
int i,j,t;
printf("pls enter the num\n");
scanf("%d",&i);
while(i!=0){
printf("%d",i%10);
i/=10;
}
}