51Testing软件测试论坛

标题: 写一个函数,返回一个整数的最后一个最大数字的位置(比如:输入28785,返回3) [打印本页]

作者: programer010    时间: 2008-12-29 11:11
标题: 写一个函数,返回一个整数的最后一个最大数字的位置(比如:输入28785,返回3)
写一个函数,返回一个整数的最后一个最大数字的位置(比如:输入28785,返回3)。


int findMax (int a) {

}

[ 本帖最后由 programer010 于 2008-12-29 22:07 编辑 ]
作者: lanbiers    时间: 2008-12-29 14:36
java or c or other ?
作者: programer010    时间: 2008-12-29 22:08
标题: c
C or java is available
作者: programer010    时间: 2008-12-30 17:05
难道这里没人会?不能吧
作者: 云层    时间: 2008-12-31 10:29
写一个函数,返回一个整数的最后一个最大数字的位置(比如:输入28785,返回3)。

最大数字是8,倒数第二个就是第三个位置?
你算一下整数的长度,然后分成一个数组,然后做个大小比较就行了啊。。
作者: maguschen    时间: 2008-12-31 16:22
一个C#的实现,思想跟LS一样。输入1208,返回1;输入9857,返回4。

  1.         public static int GetMaxDigit(int input)
  2.         {
  3.             string temp = input.ToString();
  4.             char flag = '0';
  5.             int digit = 0;
  6.             for (int i = 0; i < temp.Length; i++)
  7.             {
  8.                 if (flag < temp[i])
  9.                 {
  10.                     flag = temp[i];
  11.                     digit = i;
  12.                 }
  13.             }
  14.             return temp.Length - digit;
  15.         }
复制代码


不知道LZ有没有考虑过以下问题:如果输入全部是9999,你希望返回什么?如果输入是9191,你希望从左到右,还是从右到左?
作者: tye001    时间: 2009-1-15 11:16
LS考虑的很周到,这个在测试的时候就可以发现出问题了




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2