原题目: 
给定一个十进制数N,写下从1开始,到N的所有整数,然后数一下其中出现的所有"1"的个数。 
例如: 
N=2,写下1,2。这样只出现了1个"1" 
N=12,写下 1,2,3,4,5,6,7,8,9,10,11,12。这样"1"的个数是5 
请写出一个函数,返回1到N之间出现"1"的个数,比如 f(12)=5 
 package com;
package com;

 import java.io.BufferedReader;
import java.io.BufferedReader;
 import java.io.InputStreamReader;
import java.io.InputStreamReader;


 /** *//*******************************************************************************
/** *//*******************************************************************************
 * 原题目: 给定一个十进制数N,写下从1开始,到N的所有整数,然后数一下其中出现的所有"1"的个数。 例如: N=2,写下1,2。这样只出现了1个"1"
 * 原题目: 给定一个十进制数N,写下从1开始,到N的所有整数,然后数一下其中出现的所有"1"的个数。 例如: N=2,写下1,2。这样只出现了1个"1"
 * N=12,写下 1,2,3,4,5,6,7,8,9,10,11,12。这样"1"的个数是5 请写出一个函数,返回1到N之间出现"1"的个数,比如
 * N=12,写下 1,2,3,4,5,6,7,8,9,10,11,12。这样"1"的个数是5 请写出一个函数,返回1到N之间出现"1"的个数,比如
 * f(12)=5
 * f(12)=5
 *
 * 
 * @author zdw
 * @author zdw
 *
 * 
 */
 */
 public class MainTest
public class MainTest


 {
{
 public static void main(String[] args) throws Exception
    public static void main(String[] args) throws Exception

 
     {
{
 System.out.println("please input a number:");
        System.out.println("please input a number:");
 BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
 Integer num = Integer.parseInt(br.readLine());
        Integer num = Integer.parseInt(br.readLine());
 int count = 0;
        int count = 0;
 for (int i = 1; i <= num; i++)
        for (int i = 1; i <= num; i++)

 
         {
{
 String tNum = i + "";
            String tNum = i + "";
 if (tNum.indexOf("1") != -1)
            if (tNum.indexOf("1") != -1)

 
             {
{
 count++;
                count++;
 }
            }
 }
        }
 System.out.println("1 appear times of count:" + count);
        System.out.println("1 appear times of count:" + count);
 }
    }

 }
}

大家一起来分享你的算法吧。