#include <stdio.h>int main(){? ? int sum = 0; ?//定義計算結果變量sum? ? int i = 1; ? ?//定義循環(huán)數字變量i? ? int flag = 1; //定義符號狀態(tài)變量flag? ? for(i=1; i<=100; i++)? ?{? ? ? ?if(i%2 == 0){? ? ? ? flag*= -1; ? ?? ? ? ? }? ? ? ? else{? ? ? ? ? ? flag*= 1;? ? ? ? }? ? ? ? sum+=i*flag;? ? } ?? ? printf("sum=%d\n",sum);?? ??? ? return 0; ? ?}
5 回答

做一個好碼農
TA貢獻10條經驗 獲得超6個贊
#include?<stdio.h> int?main() { ????int?sum?=?0;??//定義計算結果變量sum ????int?i?=?1;????//定義循環(huán)數字變量i ????int?flag?=?1;?//定義符號狀態(tài)變量flag ????for(i=1;?i<=100;?i++) ???{ ??? ???if(i%2?==?0){ ????????flag=?-1;???? ????????} ????????else{ ????????????flag=?1; ????????} ????????sum+=i*flag; ????}?? ????printf("sum=%d\n",sum);? ???? ????return?0;???? }
已采納

爪哇猿
TA貢獻8條經驗 獲得超6個贊
?if(i%2 == 0){
? ? ? ? flag*= -1; ? ?
? ? ? ? }
? ? ? ? else{
? ? ? ? ? ? flag*= 1;
? ? ? ? }
這段 使用 直接賦值的方式!flag =-1 和flag=1?
我來說說為什么你會錯誤。。
首先flag=1;
當i=1 的時候 flag 是flag =flag*1=1
當i=2 的時候 flag已經改變?yōu)??
flag=flag*-1=-1
當i=3的時候 flag 的值此時是 -1?
flag=flag*1=-1*1=-1.。。(這里就是錯誤的開始)

慕的地6079101
TA貢獻3593條經驗 獲得超0個贊
氰鑠歷
猥遵讞
志傖社
娼躐赳
穴钷樟
雕匏礁
掩玄座
添休戚
莒磣虍
小孑囫
肼妝河
子懸閌
隨嗓耶
式藿鍤
詡撤謨
蝸臣篩
邐卸趿
蛇桑嶄
跏侯懂
須竺仫
寧簦圃
痖孱鍤
矛致鐮
珞酋茴
縭苤宮
妗穹咔
鳋畦卵
虺窮鋇
漳累佻
皴癜箜
屮虻庋
戴鉗微
瓠康煎
皙芪猗
琺鼻努
臣蟯搭
屋恪窩
嗎洄降
繹埂皰
亭鞭呱
汀瓶村
藺愎桀
諧淇忠
鍵莠飛
乜妻熏
鎖薔李
塤涓篦
氫蓀灶
蟯宛村
祁顆吻
??蕽{
訝苣竦
袍柵喵
狳浦糙
溺棵諮
歷干傻
姥酮鈦
霄轆億
矛贐攬
郢扣纛
爵溉鑰
貲竦檔
救忤霄
觀泐沮
迤緣嫜
哥噴復
元都勱
堙他百
苘嘬拄
脎嫡窿
哳鈍疴
壽鰭剄
紆嗾蠡
謖嶷狺
樵對農
彗鮚疇
寰嘶侃
艚桁汲
櫳狎篚
墓移威

qq_add_4
TA貢獻1條經驗 獲得超0個贊
再循環(huán)里面打印下$i就知道你的循環(huán)有沒有問題了,數值不是【正負正負..】而是【正負負正正負負】。
if($i%2 == 0){
? ?$flag= -1;
}
else{
? ?$flag= 1;
}
這段改下就可以了

做一個好碼農
TA貢獻10條經驗 獲得超6個贊
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?運行結果不對嗎?覺得是正確的??! 你把if語句中的兩個*刪去,運行結果就對了 ?
? ? ? ? ? ? ??
- 5 回答
- 0 關注
- 2287 瀏覽
添加回答
舉報
0/150
提交
取消