for循環(huán)是C++循環(huán)中的第三種循環(huán),因?yàn)槠渲庇^、控制能力強(qiáng)的特點(diǎn)使用更加頻繁,其一般形式如下:
for(初始化表達(dá)式1;判斷表達(dá)式2;更新表達(dá)式3) { 循環(huán)體語句 }
程序執(zhí)行遇到for循環(huán)后,首先執(zhí)行初始化表達(dá)式1,然后執(zhí)行判斷表達(dá)式2,根據(jù)真假決定循環(huán)體是否執(zhí)行,若不成立則跳出結(jié)束循環(huán)。若成立則執(zhí)行循環(huán)體里的語句,然后進(jìn)而執(zhí)行更新表達(dá)式3,再重新返回判斷表達(dá)式2.重復(fù)上面過程??梢钥吹窖h(huán)的三大基本條件,不像while和do while循環(huán)那樣分開,而是全部集中在for后面的小括號里,通過兩個逗號分開,看起來更直觀!不容易出現(xiàn)忘記寫“i++”這樣的話,因此for循環(huán)用起來更方便!
下面,為了強(qiáng)化大家理解,我們以一個實(shí)際問題出發(fā),例如1149題,求N以內(nèi)的奇數(shù)和,思路很簡單,即通過for控制循環(huán),然后通過判斷數(shù)字的奇偶情況,把奇數(shù)加進(jìn)去即可,我們可以用for循環(huán)嘗試實(shí)現(xiàn)。
參考代碼如下:
#include<iostream> using namespace std; int main() { int n,i; int sum = 0; cin >> n; for(i = 1; i <= n; i ++) { if(i % 2 != 0) //替換為if(i % 2)的效果是一樣的 sum += i; } cout << sum; return 0; }
請大家先自行嘗試解決,提交通過之后再參考答案。
1149 | C語言訓(xùn)練-計(jì)算1~N之間所有奇數(shù)之和 |
C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍(lán)橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習(xí)題和答疑,點(diǎn)擊了解:
一點(diǎn)編程也不會寫的:零基礎(chǔ)C語言學(xué)練課程
解決困擾你多年的C語言疑難雜癥特性的C語言進(jìn)階課程
從零到寫出一個爬蟲的Python編程課程
只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程
信息學(xué)奧賽或C++選手的 必學(xué)C++課程
藍(lán)橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競賽課入門課程
手把手講解近五年真題的藍(lán)橋杯輔導(dǎo)課程