• 大小: 1.34KB
    文件类型: .c
    金币: 1
    下载: 0 次
    发布日期: 2021-02-21
  • 语言: C/C++
  • 标签: 算法  

资源简介

给定一整数n,计算所有小于等于n的非负整数中数字1出现的个数

资源截图

代码片段和文件信息

#include 
#include 

int getNums(int num);

int getEveryRes(int start int end int len);

int main() {
    int num = -1;
    static int count1 = 0;
    int length = -1;
    // 判断当前输入数是几位数
    printf(“input a num : “);
    scanf(“%d“ &num);
    length = getNums(num);
    printf(“你输入的是:%d 位数\n“ length);
    for (int i = 1; i <= length; ++i)  // 位数 1 1-9  2  10 -99 3 100-999
    {
        if (i == length)
        {
            count1 += getEveryRes(pow(10 i - 1) num i);
        }
        else
        {
            count1 += getEveryRes(pow(10 i - 1) pow(10 i) - 1 i);
        }
    }

    printf(“%d - %d 中1出现的个数 = %d\n“ 1 n

评论

共有 条评论