当前位置: 代码迷 >> C语言 >> 2道小小的问题请教一下
  详细解决方案

2道小小的问题请教一下

热度:75   发布时间:2007-04-22 09:25:12.0
最后 排序 问题就用求余 算法就可以搞定,原数/10 求出后再排序!
----------------解决方案--------------------------------------------------------

我把九楼仁兄的程序加了点,不知对不对,请帮看看,我也初学

#include "stdio.h"
int main(void)
{
long int n=0,t=0;
int i=0;
printf("input a integer number no bigger than 99999:\n");
while(1)
{
scanf("%ld",&n);
if(n<99999)
{
break;
}
printf("the number you input is too big,please imput again!\n");
}
t=n;
for(i=0;n!=0;i++)
n/=10;

printf("位数是\n\n\n%d\n\n",i);
/*求位数结束*/
n=t;
for(i=0;n!=0;i++)/*p这是逆序的*/
{
printf("%d ",n%10);
n/=10;
}
/*自己用数组搞个顺序的吧。*/
}


----------------解决方案--------------------------------------------------------

第一题回答
#define M 100
#include <stdio.h>
main()
{
long n=0,b[M],a;
printf("please input a number:\n");
scanf("%ld",&a);
do
{
n=n+1; /* n代表是几位数*/
printf("b[%ld]=%d",n,a%10); /*从最后一位输出各位数字*/
a=a/10;
}
while(a!=0);
printf("this number has %ld numbers",n);
}
反向已经输出了,正向的用说了.


----------------解决方案--------------------------------------------------------
  相关解决方案