回 帖 发 新 帖 刷新版面

主题:循环问题~~

#include<stdio.h>

int main(void)

    int n;

    for(n=10005;n<100000;n=n+5)

    if(n%3==0)
        printf(%d\n,n);

     return 0; 
}
题目是,个位是5的5位数,而且被3整除,我在tc2上编译的,结果不对呀,请帮我看下吧

回复列表 (共12个回复)

11 楼

#include<stdio.h>

int main(void)

    int n;

    for(n=10005;n<100000;n=n+5)

    if(n%3==0&&n%10==5)/*这里少了个位数是5的条件*/
        printf("%d\n",n);/*忘了加引号""*/

     return 0; 
}
/*运行结果:91035
91065
91095
91125
91155
91185
91215
91245
91275
91305
91335
91365
91395
91425
91455
91485
91515
91545
91575
91605
91635
91665
91695
91725
91755
91785
91815
91845
91875
91905
91935
91965
91995
92025
92055
92085
92115
92145
92175
92205
92235
92265
92295
92325
92355
92385
92415
92445
92475
92505
92535
92565
92595
92625
92655
92685
92715
92745
92775
92805
92835
92865
92895
92925
92955
92985
93015
93045
93075
93105
93135
93165
93195
93225
93255
93285
93315
93345
93375
93405
93435
93465
93495
93525
93555
93585
93615
93645
93675
93705
93735
93765
93795
93825
93855
93885
93915
93945
93975
94005
94035
94065
94095
94125
94155
94185
94215
94245
94275
94305
94335
94365
94395
94425
94455
94485
94515
94545
94575
94605
94635
94665
94695
94725
94755
94785
94815
94845
94875
94905
94935
94965
94995
95025
95055
95085
95115
95145
95175
95205
95235
95265
95295
95325
95355
95385
95415
95445
95475
95505
95535
95565
95595
95625
95655
95685
95715
95745
95775
95805
95835
95865
95895
95925
95955
95985
96015
96045
96075
96105
96135
96165
96195
96225
96255
96285
96315
96345
96375
96405
96435
96465
96495
96525
96555
96585
96615
96645
96675
96705
96735
96765
96795
96825
96855
96885
96915
96945
96975
97005
97035
97065
97095
97125
97155
97185
97215
97245
97275
97305
97335
97365
97395
97425
97455
97485
97515
97545
97575
97605
97635
97665
97695
97725
97755
97785
97815
97845
97875
97905
97935
97965
97995
98025
98055
98085
98115
98145
98175
98205
98235
98265
98295
98325
98355
98385
98415
98445
98475
98505
98535
98565
98595
98625
98655
98685
98715
98745
98775
98805
98835
98865
98895
98925
98955
98985
99015
99045
99075
99105
99135
99165
99195
99225
99255
99285
99315
99345
99375
99405
99435
99465
99495
99525
99555
99585
99615
99645
99675
99705
99735
99765
99795
99825
99855
99885
99915
99945
99975
*/

12 楼

[quote]#include<stdio.h>
int main(void)

    int n;

    for(n=10005;n<100000;n=n+5)

    if(n%3==0&&n%10==5)/*这里少了个位数是5的条件*/
        printf("%d\n",n);/*忘了加引号""*/

     return 0; 
}
[/quote]

没有必要,循环体的初值和自增值已经保证了个位数是5。
用长整型long 也是必须的。而且格式控制符必须是%ld。而且后缀应尽可能加l(L)。比如循环体第二部分应为100000l,否则编译或运行容易出错。这几点楼上好几位朋友都忽略了。
事实上,如果稍微用下数学知识,问题可以更简化。
#include<stdio.h>
int main(void)
{
  long n;
  for(n=10005L;n<100000L;n+=15L)
    printf("%8ld",n);
  return 0;
}

我来回复

您尚未登录,请登录后再回复。点此登录或注册