求帮忙看看为什么代码里for循环的i总是1
#include<stdio.h>
int main()
{
int i,a,b,n=0,j;
scanf("%d %d",&a,&b);
for(i=a;i<=b;i++)
{
while(i>0){
j=i%10;
if(j==8){
n++;
}
i=i/10;
}
}
printf("%d",n);
return 0;
}
循环里面 i 的值改变了,找个中间变量得到 i 的值参与运算, i 的话,就本分的循环就行了
#include<stdio.h>
int main()
{
int i,a,b,n=0,j;
scanf("%d %d",&a,&b);
for(i=a;i<=b;i++)
{
int curi = i;
while(curi>0){
j=curi%10;
if(j==8){
n++;
}
curi=curi/10;
}
}
printf("%d",n);
return 0;
}