欢迎访问我的新博客:http://www.milkcu.com/blog/
原文地址:http://www.milkcu.com/blog/archives/1366346160.html
题目描述
标题: 1的个数
从1到20的所有数字中含有多少个“1”
仔细数一下,应该是12个。
那么从1到1000的整数中,含有多少个“1”呢?
请填写该数字。
分析
整除问题,比较简单,毕竟模拟题第一题,和以前思考的一个问题(分治算法)相像。
源代码
# include <stdio.h> int main(void) { int i, j; int n; n = 0; for(i = 1; i < 1001; i++) { //要包括1000 j = i; do { if(j % 10 == 1){ n++; } } while((j /= 10) > 0); //注意临界值的判断,第一次错写了9 } printf("%d", n); }
答案
190
301(谢谢不许偷懒啦小鬼的指正)