算法提示:
根据题意可知,满足条件的五位数的选择范围是10006、10016。。。99996。可设基础数i=1000,通过计算i*10+6即可得到欲选的数(i的变化范围是1000~999),再判断该数能否被3整除
求C语言源程序: 有限5位数个位数为6且能被3整除的五位数共有多少
答案:5 悬赏:70
解决时间 2021-12-22 23:33
- 提问者网友:依靠
- 2021-12-21 22:37
最佳答案
- 二级知识专家网友:一身浪痞味
- 2021-12-21 23:44
其实没有必要算k的值,因为只要输出个数即可的话,那么末尾为6是肯定的。那么只需要判断从1000到9999的前四位数能被3整除的有多少个就OK了。6可以被3整除的,那么就计算前面四位数,把4位数字相加如果能被3整除哪么就满足条件。
main()
{
int i,j,k,m,count;
m=0;
for(i=1000;i<=9999;i++)
{k=10*i+6;//其实没什么用
for(j=i;j<=0;j++){//将4位数字相加
m+=j%10;
}
if((m+6)%3==0 count++;
}
printf("%d",count);
}
main()
{
int i,j,k,m,count;
m=0;
for(i=1000;i<=9999;i++)
{k=10*i+6;//其实没什么用
for(j=i;j<=0;j++){//将4位数字相加
m+=j%10;
}
if((m+6)%3==0 count++;
}
printf("%d",count);
}
全部回答
- 1楼网友:开心就好
- 2021-12-22 03:49
#include<stdio.h>
int main()
{
long i,count=0;
for(i=10000;i<=99999;i++)
if(i%10==6&&i%3==0)
count++;
printf("总共有 %d 个",count);
return 0;}
- 2楼网友:何以畏孤独
- 2021-12-22 02:23
#include
void main()
{
int n=10006;
while(n<=100000&&n>=10000){
if(n%3==0)printf("%d ",n);
n+=10;
}
}
- 3楼网友:心痛成瘾
- 2021-12-22 01:25
#include
#include
int main()
{
int i,cnt=0;
for(i=1000;i<10000;i++)
if(i%3==0)
cnt++;
printf("\n%d\n",cnt);
system("pause");
return 0;
}
只要判断前四位1000~9999就可以了,甚至可以改成for(i=1002;i<10000;i+=3)cnt++;这样计算量更少,结果是3000。。。
- 4楼网友:零负荷的放任
- 2021-12-21 23:55
其实不用加六,肯定能被三整除!
#include
#include
int main()
{
int i,cnt;
for(i=1000;i<9999;i++)
if(i%3==0)
cnt++;
printf("cnt=%d",cnt);
system("pause");
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯