zoukankan      html  css  js  c++  java
  • c 语言统计数字

    //把前n(n<10000)个整数顺次写在一起:12345678910111213141516....数一数0至9出现的次数
    //输出10个整数,分别是0,1,2..至9出的个数
    //解题思路:分别统计每一个数中的每一位的数 并判断其每一位的值
    #include<stdio.h>
    #include<string.h>
    const int maxn= 10001;
    int cD[maxn][10];
    int main(){
        int b=0;
        //置零
        memset(cD,0,sizeof(cD));
        //遍历数组每一位
        for(int i=0;i<=10000;i++){
            b=i;
            //循环每一个数字的每一位
             for(;;){
                //统计每一个数字中的每一位的数字情况
                for(int j=0;j<10;j++){
                    //最后一位的数字
                    if(i%10==j){
                        cD[i][j]++;
                        break;
                    }
                }
                //数字减少一位
                b/=10;
                //跳出循环
                if(b==0)
                    break;
             }
        }
        int n;
        scanf("%d",&n);
        //统计输出结果
        for(int j=0;j<10;j++){
                int sum=0;
            for(int i=1;i<=n;i++){
                sum+=cD[i][j];
            }
            printf("%d: %d ",j,sum);

        }
        return 0;
    }

  • 相关阅读:
    js getAttribute()和setAttribute()方法
    FCKeditor上传图片显示叉叉的问题的解决方案
    数据导出
    插入多种格式的网页播放器
    注册机...郁闷..
    AJAX效果
    2003下使用JMAIL问题解决办法
    ASP无组件上传带进度条
    MSSQL查询题解
    在线转flv+flash在线录制视频
  • 原文地址:https://www.cnblogs.com/qingtianBKY/p/6599758.html
Copyright © 2011-2022 走看看