wordpress获取分类子分类所有文章,郑州seo管理系统运营,网络营销费用预算,网站开发的目的相关书籍1095#xff1a;数1的个数时间限制: 1000 ms 内存限制: 65536 KB【题目描述】给定一个十进制正整数n(1≤n≤10000)#xff0c;写下从1到n的所有整数#xff0c;然后数一下其中出现的数字“1”的个数。例如当n2时#xff0c;写下1,2。这样只出现了1个“1”#xff1b;当… 1095数1的个数时间限制: 1000 ms 内存限制: 65536 KB【题目描述】给定一个十进制正整数n(1≤n≤10000)写下从1到n的所有整数然后数一下其中出现的数字“1”的个数。例如当n2时写下1,2。这样只出现了1个“1”当n12时写下123456789101112。这样出现了5个“1”。【输入】正整数n。1 ≤ n ≤ 10000。【输出】一个正整数即“1”的个数。【输入样例】12【输出样例】5说明主要考查嵌套循环。思路分析本题与下面题解使用了相同的循环嵌套框架【题解·循环】1091求阶乘的和【题解·循环嵌套】1092求出e的值【题解·循环嵌套】1093计算多项式的值【题解·循环嵌套】1094与7无关的数外层循环遍历1~n共循环n次。每循环遍历一个数字时在内层循环中统计该数含有多少个1并把数目累计在计数器中。而统计某个数含有1的数目使用了前面题解的方法。即循环判断某数的每一位上的数字是否等于1。数据类型本题无特别之处所有变量可选择int类型。易错点个别同学理解成【数字含有1就当一个】而实际上一个数含有多少个1就算多少个。像111这个数字含有3个1不是算一个而是算3个。运行结果参考代码 - C#include using namespace std;int main(){ int n, cnt 0; // cnt是计数器用于累计1的数目 cin n; for (int i 1; i n; i) { int t i; // 因不能修改i所以声明t临时存储i的值 while (t) { if (t % 10 1) cnt; // 如果个位数等于1则累计 t / 10; // 删除个位数 } } cout return 0;}END注题目来源于网络转载于《信息学奥赛一本通(C版)在线评测系统》点击下方的【阅读原文】即可打开该题的链接。题解属于本微信公众号【大神编程】原创。