課程
/后端開發(fā)
/C
/C語言入門
不能被3整除的數(shù)應該是i%3!=0 ?怎么會是i%3=0 這不是剛好相反
2019-07-25
源自:C語言入門 4-15
正在回答
我明白你說的意思,因為這里用到了continue,?是把能整除的輸已經(jīng)剔除掉了。剩下的就是不能整除的
日過用你那樣的想法腳本就應該是這樣:? 你可以看下,這樣可以達到同樣的效果,因為這個課時是學的continue,所以是這樣寫的。
#include <stdio.h>
int main()
{
? ? int i, sum;
? ? for(i=1, sum=0; i<=20; i++)
? ? {
? ? ? ? if(? ? ?i%3!=0? ? )? ? //能被3整除這個條件如何寫呢?
? ? ? ? {
? ? ? ? ? ?? sum+=i;
? ? ? ? }? ? ? ? ? ? ? ? ??
? ? }
? ?printf("sum=%d", sum);
? ? return 0;? ??
}
continue的意思是先跳出,就是i%3==0的時候停止,不進行sum += i,然后下一次再繼續(xù)。
比如i=2時,2%3==0為假,不執(zhí)行continue,執(zhí)行sum+=i,現(xiàn)在sum=3,這次循環(huán)結(jié)束,下一次循環(huán),這時i=3,3%3==0為真,就會執(zhí)行continue跳出,不會執(zhí)行sum+=i,因此能被3整除的數(shù)字就不會被包含進求和運算里,i=4時,(這點就是和break不同的地方,每次break之后都會重新賦值,比如上個練習for(n=2;m>n;n++){if(m%n==0){ break;}}意味著只要滿足m%n==0,發(fā)生break之后,下一次開始這個for循環(huán)的時候n都會重新賦值為初始值2,但是continue的話就會接著上次運算剩下的值繼續(xù)進行,不會重新賦值),4%3==0為假,不執(zhí)行continue,sum=7.
所以這里并不是為了識別不能被三整除的數(shù),而是要識別能被三整除的數(shù)并及時跳出防止它們加到sum上。
題目沒有錯,自己想一下,大家都是新手#include<stdio.h>int main(){ int i,sum; for(i=1,sum=0;i<=20;i++) { if(i%3==0) { continue; } sum += i; } printf(“sum=%d\n”, sum) return 0;}
循環(huán)是要滿足條件才能循環(huán),您說是不是整除的循環(huán),不整除的跳出?
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
4 回答數(shù)組這里題目是不是錯了?教錯了還是打錯了?
3 回答是不是網(wǎng)頁出問題了。。。我的老是錯誤
2 回答慕課是不是出問題了?
2 回答題目是不是有問題
1 回答題目是不是不清楚
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關注慕課網(wǎng)微信公眾號
2019-08-22
我明白你說的意思,因為這里用到了continue,?是把能整除的輸已經(jīng)剔除掉了。剩下的就是不能整除的
日過用你那樣的想法腳本就應該是這樣:? 你可以看下,這樣可以達到同樣的效果,因為這個課時是學的continue,所以是這樣寫的。
#include <stdio.h>
int main()
{
? ? int i, sum;
? ? for(i=1, sum=0; i<=20; i++)
? ? {
? ? ? ? if(? ? ?i%3!=0? ? )? ? //能被3整除這個條件如何寫呢?
? ? ? ? {
? ? ? ? ? ?? sum+=i;
? ? ? ? }? ? ? ? ? ? ? ? ??
? ? }
? ?printf("sum=%d", sum);
? ? return 0;? ??
}
2022-02-06
continue的意思是先跳出,就是i%3==0的時候停止,不進行sum += i,然后下一次再繼續(xù)。
比如i=2時,2%3==0為假,不執(zhí)行continue,執(zhí)行sum+=i,現(xiàn)在sum=3,這次循環(huán)結(jié)束,下一次循環(huán),這時i=3,3%3==0為真,就會執(zhí)行continue跳出,不會執(zhí)行sum+=i,因此能被3整除的數(shù)字就不會被包含進求和運算里,i=4時,(這點就是和break不同的地方,每次break之后都會重新賦值,比如上個練習for(n=2;m>n;n++){if(m%n==0){ break;}}意味著只要滿足m%n==0,發(fā)生break之后,下一次開始這個for循環(huán)的時候n都會重新賦值為初始值2,但是continue的話就會接著上次運算剩下的值繼續(xù)進行,不會重新賦值),4%3==0為假,不執(zhí)行continue,sum=7.
所以這里并不是為了識別不能被三整除的數(shù),而是要識別能被三整除的數(shù)并及時跳出防止它們加到sum上。
2019-08-02
題目沒有錯,自己想一下,大家都是新手
#include<stdio.h>
int main()
{
int i,sum;
for(i=1,sum=0;i<=20;i++)
{
if(i%3==0)
{
continue;
}
sum += i;
}
printf(“sum=%d\n”, sum)
return 0;
}
2019-07-25
循環(huán)是要滿足條件才能循環(huán),您說是不是整除的循環(huán),不整除的跳出?