33,311
社区成员
发帖
与我相关
我的任务
分享
#include "stdio.h"
main()
{ int digit (int n,int k);
int n ,k; int j=0;
scanf("%d,%d",&n,&k);
printf ("原来是:%d\n",j);
j=digit(n,k);
printf("the number is :%d\n",j);
}
int digit(int n,int k)
{ int f=0,d=0;
if(k<=0) {f=-1;d=1;}
else if(k==1) {d=1;f=n%10; }
else {n=n/10;printf ("执行几次?");return(digit(n,--k));printf("这个不执行?");}//这个return是返回到哪?
printf("最后是%d\t",f);
if (d==1)
{printf("返回的%d\t",f);return (2*f);}
}
/*-----------------------------------------
题目:输入的数字的倒数第k个数
时间:2009.06.14
-----------------------------------------*/
#include "stdio.h"
int main(void)
{
int digit (int n,int k); //形参n为输入的数字,k为返回的倒数第k位
int n ,k;
int j=0;
printf("\n请输入数字n和k!\n");
printf("n=");
scanf("%d",&n);
printf("k=");
scanf("%d",&k);
fflush(stdin);
printf ("\n您输入的数字是:%d\n",n); //你用的是j,当然会是0喽^*^,改为n
j=digit(n,k);
// printf("the number is :%d\n",j); //你这里要输出谁啊?
return 0;
}
int digit(int n,int k)
{
int f=0,d=0; //通过f返回倒数第k位的数字,d为判断所有数字是否都处理完,d=1,处理完
if(k<=0)
{
f=-1;
d=1;
}
else if(k==1)
{
d=1;
f=n%10;
}
else
{
n=n/10;
return(digit(n,--k));
}
if (d==1)
{
printf("返回的%d\n\n",f);
// return (2*f); //为什么要这条语句?
}
}