登录 | 首页 -> 华新鲜事 -> 社会百科 | 切换到:传统版 / sForum | 树形列表
———
<<始页  [1]  末页>> 

———write a recursive version of function which returns the position of the first appearance of a specified digit in a positive number.count from right and starts from 1.
i.e:input 1234 and 3,output 2,input 123241 and 2,output 3.
以上都不难,可以实现,但是他又规定如果那个digit不在那个数中的话,输出0,例如:input 234 and 1,output 0.这可把我难倒了。
注意:该程序要用recursive version写。
请高手指教,很急,谢谢!
[春兰特派员 (9-14 17:20, Long long ago)] [ 传统版 | sForum ][登录后回复]1楼

标题:———C语言难题一道,急!———[春兰特派员 (9-14 17:21, Long long ago)] [ 传统版 | sForum ][登录后回复]2楼

hereint fun (int n, int d)
{
int n;

if (n <= 9) return (n == d) ? 1 : 0;
if (n%9 == d) return 1;
tmp = fun(n/10, d);
return tmp ? (tmp+1) ? 0;
}
[吴永铮 (9-15 10:34, Long long ago)] [ 传统版 | sForum ][登录后回复]3楼

(引用 吴永铮:hereint fun (int n, int d) { int n; if (n ...)"return tmp ? (tmp+1) ? 0;" 这个什么意思???好像不能当双目运算符吧……[香陵居士 (9-15 10:41, Long long ago)] [ 传统版 | sForum ][登录后回复]4楼

(引用 香陵居士:"return tmp ? (tmp+1) ? 0;" 这个什么意思???好像不能当双目运算符吧……)typo. another typo isif (n%9 == d) return 1;
should be
if (n%10 == d) return 1;
[吴永铮 (9-15 10:49, Long long ago)] [ 传统版 | sForum ][登录后回复]5楼

(引用 吴永铮:hereint fun (int n, int d) { int n; if (n ...)果然高手,虽然我后来做出来了!但是比我的程序短了一半,厉害厉害![春兰特派员 (9-15 18:15, Long long ago)] [ 传统版 | sForum ][登录后回复]6楼

我自己的算法int rposition(int number,int digit)
{
int static i=0;
int temp;
if(number%10==digit)
{
i=0;
return 1;
}
else if(number==0)
{
i++;
return 1+rposition(number/10,digit);
}
}
[春兰特派员 (9-15 18:19, Long long ago)] [ 传统版 | sForum ][登录后回复]7楼

My C source code, have debugged in TC#include "stdio.h"
int position(unsigned long number, int digit)
{
int i=0, remainder;
unsigned long number0=number;
while (number0!=0)
{
number0=number/10;
remainder=number-number0*10;
number=number0;
if (remainder==digit)
{
i++;break;
}
else
i++;
}
if (number0==0)
return(0);

else
return(i);
}
void main()
{
unsigned long number=324263555;
int digit=8;
printf("(%ld,%d)=%d\n",number,digit,position(number,digit));
}
[jianxing (9-15 22:24, Long long ago)] [ 传统版 | sForum ][登录后回复]8楼


<<始页  [1]  末页>> 
登录 | 首页 -> 华新鲜事 -> 社会百科 | [刷新本页] | 切换到:传统版 / sForum