onesnumber.c

来自「包括一个函数OnesCount,可计算从1至N的所有自然数中出现过的"1"的个数」· C语言 代码 · 共 23 行

C
23
字号
#include <stdio.h>
#include <stdlib.h>

int OnesCount(int n) {
	int q, r0, r, p=1, sum1=0;
    q=n;
    do {
        r=q%10; q/=10; r0=n%p;
		sum1+= q*p;
		if (r>1) sum1+=p;
		else if (r==1) sum1+=(r0+1);
		p*=10;
	} while (q>0);
	return sum1;
}

void main() {
    int i;
	for (i=0; i<=1234567890; i++) {
		if (i==OnesCount(i)) printf("%d\n",i);
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?