從頭學(xué)習(xí)C語言之for語句和循環(huán)嵌套
for語句:
前言:
循環(huán)的基本結(jié)構(gòu)離不開三個(gè)基本動(dòng)作:
- 初始化計(jì)數(shù)器
- 循環(huán)條件
- 更新計(jì)數(shù)器
int count=0; while(count<10) { printf("fishc!\n); count=count+1;
注意事項(xiàng):
1.C99允許再for語句的表達(dá)式1中定義變量(在for循環(huán)里定義的變量出了循環(huán)就不能用了),
如:for(int i=0;i<100;i++)
2.在編譯時(shí)要加上-std=c99,
如:gcc -std=c99 text11_2.c && ./a.out
語句形式:
…//其他語句
for(表達(dá)式1;表達(dá)式2;表達(dá)式3)
循環(huán)體
…///其他語句
執(zhí)行順序:
- 1.初始化
- 2.循環(huán)條件判斷
- 3.執(zhí)行循環(huán)內(nèi)容
- 4.調(diào)整條件
- 5.234循環(huán)進(jìn)行,判斷為錯(cuò)則停止循環(huán)
三個(gè)表達(dá)式用分號(hào)隔開,其中:
- 表達(dá)式1是循環(huán)初始化表達(dá)式
- 表達(dá)式2是循環(huán)條件表達(dá)式
- 表達(dá)式3是循環(huán)調(diào)整表達(dá)式
流程圖:
靈活運(yùn)用:
- 表達(dá)式1,表達(dá)式2和表達(dá)式3可以按照需要進(jìn)行省略(但分號(hào)不能?。?/li>
- for(;表達(dá)式2;表達(dá)式3)
- for(表達(dá)式1;表達(dá)式2;)
- for(表達(dá)式1; ; )
- for(; ; )
- …
示例:
例1:打印十次"孫哥真牛逼"
#include <stdio.h> int main() { int count; for(count=0;count<10;count++) { printf("孫哥真牛逼!\n"); } return 0; }
例2:判斷一個(gè)數(shù)是否為素?cái)?shù):
- 素?cái)?shù)?在大于1的自然數(shù)中,除了1和此數(shù)自身外,無法被其他自然數(shù)整除的數(shù)。
- 關(guān)于素?cái)?shù)的求法有很多,這里我們用比較樸素暴力的方式:迭代測(cè)試2到num/2所有整數(shù)是否能被整除(num為待測(cè)試的整數(shù)),如果沒有出現(xiàn)能被整除的整數(shù),呢么它就是素?cái)?shù)。
#include<stdio.h> int main() { int i,num; _Bool flag=1; printf("請(qǐng)輸入一個(gè)整數(shù)來判斷是否為素?cái)?shù)。"); scanf("%d",&num); for(i=2;i<num/2;i++) { if(num%i==0) { flag=0; } } if(flag) { printf("%d是一個(gè)素?cái)?shù)!\n",num); } else { printf("%d不是一個(gè)素?cái)?shù)!\n",num); } return 0; }
循環(huán)嵌套:
C 語言允許在一個(gè)循環(huán)內(nèi)使用另一個(gè)循環(huán)。
語句形式:
…//其他語句
for(表達(dá)式1;表達(dá)式2;表達(dá)式3)
{
for(表達(dá)式1;表達(dá)式2;表達(dá)式3)
{
循環(huán)體
}
}
流程圖:
示例:
例1:
#include<stdio.h> int main() { int i,j; for(i=0;i<3;i++) { for(j=0;j<3;j++) { printf("i=%d,j=%d\n",i,j); } } return 0; }
例2:打印九九乘法表:
#include<stdio.h> int main() { int i,j; for(j=1;j<10;j++) { for(i=1;i<=j;i++) { printf("%d*%d=%-2d\t",i,j,i*j);//%-2d:將結(jié)果以兩位數(shù)的形式展現(xiàn)。 } putchar('\n');//用putchar('\n')將光標(biāo)移到下一行。 } return 0; }
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
VisualStudio 使用Visual Leak Detector檢查內(nèi)存泄漏
這篇文章主要介紹了VisualStudio 使用Visual Leak Detector檢查內(nèi)存泄漏的相關(guān)資料,需要的朋友可以參考下2015-07-07C++實(shí)現(xiàn)比特幣系統(tǒng)的源碼
這篇文章主要介紹了C++實(shí)現(xiàn)比特幣系統(tǒng)的源碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01C語言運(yùn)算符及其優(yōu)先級(jí)匯總表口訣
由于C語言的運(yùn)算符優(yōu)先級(jí)與C++的不完全一樣(主要是增加了幾個(gè)運(yùn)算符),所以這個(gè)口訣不能完全實(shí)用于C++.但是應(yīng)該能夠兼容,大家可以比較一下他們的區(qū)別應(yīng)該就能夠很快掌握C++的優(yōu)先級(jí)的2013-07-07詳解C語言的隨機(jī)數(shù)生成及其相關(guān)題目
這篇文章主要介紹了詳解C語言的隨機(jī)數(shù)生成及其相關(guān)題目,作者還列舉了阿里巴巴的一道相關(guān)的面試題,需要的朋友可以參考下2015-08-08C++數(shù)據(jù)結(jié)構(gòu)深入探究棧與隊(duì)列
棧和隊(duì)列,嚴(yán)格意義上來說,也屬于線性表,因?yàn)樗鼈円捕加糜诖鎯?chǔ)邏輯關(guān)系為 "一對(duì)一" 的數(shù)據(jù),但由于它們比較特殊,本章講解分別用隊(duì)列實(shí)現(xiàn)棧與用棧實(shí)現(xiàn)隊(duì)列2022-05-05C++11特性小結(jié)之decltype、類內(nèi)初始化、列表初始化返回值
這篇文章主要介紹了C++11特性小結(jié)之decltype、類內(nèi)初始化、列表初始化返回值,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05