你这不对的。比如第一个1你就判断错误了。1/10=0,0%5=0,这样你把1也认为是带5的啦
#include <stdio.h>
int main()
{
int i,k,count=0;
for(i=1;i<100;i++)
{
k = i;
while(k>0)
{
if(k%10 == 5)
break;
k = k/10;
}
if(k > 0)
count++;
}
printf("%d",count);
return 0;
}
只需要一个取余运算就行了,可以单步仿真调试查看程序问题
#include <stdio.h>
int main()
{
int num = 0,i = 1;
for(i = 1;i<=100;i++)
{
if(i%5==0)
{
num++;
}
}
printf("%d",100-num);
}