问题 B: 数字1的数量
时间限制: 1 Sec 内存限制: 64 MB提交: 37 解决: 21
[ 提交][ 状态][ 讨论版]
题目描述
给定一个十进制正整数N,写下从1开始,到N的所有正数,计算出其中出现所有1的个数。
例如:n = 12,包含了5个1。因为1,10,12共包含3个1,11包含2个1,总共5个1。
输入
输入N(0 <= N <= 10^6)
多组测试数据
多组测试数据
输出
输出包含1的个数
样例输入
12
样例输出
5
enmmmm,在其他平台上代码是错的,我试过了,应该是被改弱了,恩先这样,有时间再补上。
#include<stdio.h>
int main() {
int n,i,j,a,count=0;
while(scanf("%d",&n)!=EOF) {
for(int i=0; i<=n; i++) {
j=i;
while(j!=0) {
if(j%10==1)
count++;
j=j/10;
}
}
printf("%d\n",count);
count = 0;
}
return 0;
}
熙熙攘攘的红尘,走着,错过;一程又一程,人笑我笑,人哭我哭。