To my CSDN

判断1~n有多少个1

判断1~n有多少个1

例如:1~12中

1 2 3 4 5 6 7 8 9 10 11 12

有1,10,11,12中含有1,则共有5个1;
算法如下:

#include<stdio.h>
#include<math.h>
int Fun_1(int n)//判断每一位上的数是否等于1
{
	int l,len=0;
	while(n)
	{
		l=n%10;
		n/=10;
		if(l==1)	len++;
	}
	return len;
}

void Fun(int n)//1~n有多少个1
{
	int num=0;
	for(int i=1;i<=n;i++)
	{
		num+=Fun_1(i);
	}
	printf("%d\n",num);
}

int main()
{
	Fun(12);
	return 0;
}

程序输出为在这里插入图片描述

posted @ 2019-03-18 20:21  我叫RT  阅读(404)  评论(0)    收藏  举报