求位数的问题
#include<stdio.h>int fun(int n,int i)
{
int s=0;
if(i==1)
s=n%10;
else
s=fun(n/10,i-1);
return s;
}
main()
{
long m,n;
int i,k=0,l;
printf("请输入一个数:");
scanf("%ld",&m);
n=m;
printf("请输入要取得的数的位数:");
scanf("%d",&i);
/*while(m!=0)
{ m=m/10;
k++;
}
if(k>i)
printf("您输入的要取的的书的位数不正确\n");
else */
printf("%d\n",fun(n,i));
}
例如要输入一个数 7893,输入要取得的位数,如 3,则输出 8,这是我写的程序,有些问题,哪位高手帮我改下。
程序中/* */ 为问题的所在。