解题思路:本题的关键就是找到在小于等于n的数的各个位数的值是多少,由于题目给出n值的限制,即小于1000。1000是能够被2整除的,因此我们只需要考虑2到999的范围的值,用一个a[3]的整数数组,即可存放百位、十位、个位上的数值。具体代码如下:
参考代码:
#include<stdio.h>
int main()
{
int n,i,sum = 0;
int a[3];
scanf("%d",&n);
for(i = 1;i <= n;i++)
{
a[0] = i/100; //百位
a[1] = i%100/10; //十位
a[2] = i%100%10; //个位
if((i % 2 == 0) || a[0] == 2 || a[1] == 2 || a[2] == 2)
continue;
sum+=i;
}
printf("%d\n",sum);
return 0;
}
0.0分
1 人评分
2005年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:530 |
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:724 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:639 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:593 |
【金明的预算方案】 (C++代码)浏览:996 |
校门外的树 (C语言代码)浏览:733 |
母牛的故事 (C语言代码)浏览:739 |
1908题解浏览:680 |
2003年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:721 |
Hello, world! (C语言代码)浏览:916 |