C語(yǔ)言中的for循環(huán)語(yǔ)句基本語(yǔ)法及使用
今天給大家分享C語(yǔ)言中的for循環(huán)語(yǔ)句的基本語(yǔ)法以及基本使用。老樣子,首先還是來(lái)了解for循環(huán)的語(yǔ)法格式
for(表達(dá)式1;表達(dá)式2;表達(dá)式3)
{
語(yǔ)句;
}上面呢就是for循環(huán)的基本語(yǔ)法格式,我來(lái)簡(jiǎn)要介紹一下。
表達(dá)式1:設(shè)置初始條件,只執(zhí)行一次,可以為多個(gè)變量設(shè)置初始值。
表達(dá)式2:循環(huán)條件表達(dá)式,判斷是否集訓(xùn)循環(huán)。
表達(dá)式3:執(zhí)行循環(huán)體后再執(zhí)行。
這里要注意的是,表達(dá)式1只在循環(huán)開(kāi)始時(shí)執(zhí)行一次,而表達(dá)式3是循環(huán)結(jié)束后再執(zhí)行。表達(dá)式2可以省略,省略后默認(rèn)值為1,則判斷為真,for循環(huán)就會(huì)成為一個(gè)死循環(huán)。
日常編寫(xiě)代碼最常用的格式
for(定義循環(huán)變量初始值;循環(huán)條件;循環(huán)變量增值) 語(yǔ)句;
例如,使用for循環(huán)打印1-10的數(shù)字
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a = 0;
for (a = 1; a < 11;a++)
{
printf("%d\n", a);
}
return 0;
}
我來(lái)簡(jiǎn)單解釋一下上述代碼的執(zhí)行過(guò)程,首先定義整形變量a==0,進(jìn)入循環(huán),將變量a的初始值定義為1,判斷條件為a<11為真,然后輸出a,最后a++,那么我們知道變量初始化只執(zhí)行一次,變量
增值在循環(huán)結(jié)束后執(zhí)行,則a==1在最初只執(zhí)行一次,給a賦值為1后便和循環(huán)沒(méi)有關(guān)系了,a==1進(jìn)入判斷條件<11為真,輸出a的值1,然后a自增==2,再次判斷<11為真,輸出a的值為2,a再次自增,如此循環(huán)下去,a的值到達(dá)11時(shí)循環(huán)結(jié)束。
那么既然a==1只執(zhí)行一次,a++每次都執(zhí)行,那么可不可以把a(bǔ)==1放在循環(huán)外,a++放在循環(huán)體中呢,當(dāng)然可以。
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int a = 1;
for (; a < 11;)
{
printf("%d\n", a);
a++;
}
return 0;
}
不過(guò)要注意的是,即使將表達(dá)式1和表達(dá)式3移除,()內(nèi)的分號(hào)也不能去掉。
for循環(huán)中的break語(yǔ)句
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int i;
for (i = 1; i < 11;i++)
{
if (i==5)
{
break;
}
printf("%d\n", i);
}
return 0;
}
當(dāng)我們?cè)趧倓倢?shí)現(xiàn)的代碼中加入一個(gè)if語(yǔ)句,添加一個(gè)break后,執(zhí)行結(jié)果發(fā)生了變化。可以看到當(dāng)執(zhí)行到i==5時(shí)循環(huán)結(jié)束了,那我們通過(guò)這個(gè)結(jié)果不難知道,break在for循環(huán)中的意思為停止。
for循環(huán)中的continue
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int i;
for (i = 1; i < 11;i++)
{
if (i==5)
{
continue;
}
printf("%d\n", i);
}
return 0;
}
當(dāng)我們將上述代碼中的break替換為break之后,發(fā)現(xiàn)結(jié)果又發(fā)生了變化,可以看到結(jié)果沒(méi)有輸出5,那么我們可以知道continue的意思為跳過(guò)當(dāng)前循環(huán),執(zhí)行下一次循環(huán)。
知道了for循環(huán)的基本語(yǔ)法格式,我們來(lái)進(jìn)行一個(gè)小練習(xí)。
求出1!——n!的和
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int numb, i, n, ret = 1, sum = 0;
scanf("%d", &numb);
for (n = 1; n <= numb; n++)
{
ret = 1;
for (i = 1; i <= n; i++)
{
ret *= i;
}
sum += ret;
}
printf("%d\n", sum);
return 0;
}
我來(lái)簡(jiǎn)單說(shuō)明一下
//假如numb=3;當(dāng)n=1,n<3,進(jìn)入循環(huán),n=1,i=1,i==n,進(jìn)入內(nèi)部循環(huán),ret=ret*i=1,i++=2>n,內(nèi)部循環(huán)跳出,sum=ret+sum=1,
//n++=2<=3,進(jìn)入第二次外部循環(huán),i=1,n=2,i<n,進(jìn)入內(nèi)部循環(huán),ret=ret*1=1,i++=2==n,再次循環(huán)ret=ret*i=2,i++=3>n,跳出內(nèi)部循環(huán),sum=ret+sum=1+2,直到n=3,sum=9
那么我們可以看到上面那個(gè)代碼在外部for語(yǔ)句中嵌套了一個(gè)for語(yǔ)句,那我們可以知道foe循環(huán)是可以支持嵌套的。
以上就是今天的分享了,那么關(guān)于for循環(huán)你了解了多少呢。
到此這篇關(guān)于C語(yǔ)言中的for循環(huán)語(yǔ)句基本語(yǔ)法及使用的文章就介紹到這了,更多相關(guān)C語(yǔ)言for循環(huán)語(yǔ)句內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++ Primer Plus 第四章之C++ Primer Plus復(fù)合類(lèi)型學(xué)習(xí)筆記
數(shù)組(array)是一種數(shù)據(jù)格式,能夠存儲(chǔ)多個(gè)同類(lèi)型的值。每個(gè)值都存儲(chǔ)在一個(gè)獨(dú)立的數(shù)組元素中,計(jì)算機(jī)在內(nèi)存中依次存儲(chǔ)數(shù)組的各個(gè)元素,今天給大家重點(diǎn)介紹C++ Primer Plus復(fù)合類(lèi)型的實(shí)例詳解,感興趣的朋友一起看看吧2021-07-07
C++實(shí)現(xiàn)CreatThread函數(shù)主線程與工作線程交互的方法
這篇文章主要介紹了C++實(shí)現(xiàn)CreatThread函數(shù)主線程與工作線程交互的方法,是Windows應(yīng)用程序設(shè)計(jì)中非常實(shí)用的方法,需要的朋友可以參考下2014-10-10
C++集體數(shù)據(jù)交換實(shí)現(xiàn)示例講解
這篇文章主要介紹了C++集體數(shù)據(jù)交換實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2022-11-11
淺談c++性能測(cè)試工具之計(jì)算時(shí)間復(fù)雜度
有時(shí)候除了測(cè)量算法的具體性能指數(shù),我們也會(huì)希望測(cè)試出算法的時(shí)間復(fù)雜度,以便我們對(duì)待測(cè)試的算法的性能有一個(gè)更加直觀的了解。本文將介紹c++性能測(cè)試工具之計(jì)算時(shí)間復(fù)雜度。2021-06-06
C語(yǔ)言實(shí)現(xiàn)三角函數(shù)表
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言三角函數(shù)表,打印出相對(duì)應(yīng)的三角函數(shù)值,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-06-06
關(guān)于C++靜態(tài)成員函數(shù)訪問(wèn)非靜態(tài)成員變量的問(wèn)題
靜態(tài)成員函數(shù)不能訪問(wèn)非靜態(tài)成員,這是因?yàn)殪o態(tài)函數(shù)屬于類(lèi)而不是屬于整個(gè)對(duì)象,靜態(tài)函數(shù)中的 member可能都沒(méi)有分配內(nèi)存。靜態(tài)成員函數(shù)沒(méi)有隱含的this自變量。所以,它就無(wú)法訪問(wèn)自己類(lèi)的非靜態(tài)成員2013-10-10

