從頭學(xué)習(xí)C語(yǔ)言之for語(yǔ)句和循環(huán)嵌套
for語(yǔ)句:
前言:
循環(huán)的基本結(jié)構(gòu)離不開(kāi)三個(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語(yǔ)句的表達(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
語(yǔ)句形式:
…//其他語(yǔ)句
for(表達(dá)式1;表達(dá)式2;表達(dá)式3)
循環(huán)體
…///其他語(yǔ)句
執(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)隔開(kāi),其中:
- 表達(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ù)自身外,無(wú)法被其他自然數(shù)整除的數(shù)。
- 關(guān)于素?cái)?shù)的求法有很多,這里我們用比較樸素暴力的方式:迭代測(cè)試2到num/2所有整數(shù)是否能被整除(num為待測(cè)試的整數(shù)),如果沒(méi)有出現(xiàn)能被整除的整數(shù),呢么它就是素?cái)?shù)。
#include<stdio.h>
int main()
{
int i,num;
_Bool flag=1;
printf("請(qǐng)輸入一個(gè)整數(shù)來(lái)判斷是否為素?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 語(yǔ)言允許在一個(gè)循環(huán)內(nèi)使用另一個(gè)循環(huán)。
語(yǔ)句形式:
…//其他語(yǔ)句
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é)果以?xún)晌粩?shù)的形式展現(xiàn)。
}
putchar('\n');//用putchar('\n')將光標(biāo)移到下一行。
}
return 0;
}
總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
- C語(yǔ)言示例講解for循環(huán)的用法
- C語(yǔ)言for循環(huán)嵌套for循環(huán)在實(shí)踐題目中應(yīng)用詳解
- c語(yǔ)言for、while和do-while循環(huán)之間的區(qū)別
- C語(yǔ)言 while for do while循環(huán)體詳解用法
- C語(yǔ)言中for循環(huán)問(wèn)題(一個(gè)小坑需注意)
- C語(yǔ)言菜鳥(niǎo)基礎(chǔ)教程之for循環(huán)
- 快速學(xué)習(xí)C語(yǔ)言中for循環(huán)語(yǔ)句的基本使用方法
- C語(yǔ)言?for循環(huán)示例詳解
相關(guān)文章
C++使用一個(gè)棧實(shí)現(xiàn)另一個(gè)棧的排序算法示例
這篇文章主要介紹了C++使用一個(gè)棧實(shí)現(xiàn)另一個(gè)棧的排序算法,結(jié)合實(shí)例形式分析了C++借助輔助棧實(shí)現(xiàn)棧排序算法的相關(guān)操作技巧,需要的朋友可以參考下2017-05-05
CMake語(yǔ)法及CMakeList.txt簡(jiǎn)單使用小結(jié)
Cmake主要用于開(kāi)發(fā)跨平臺(tái)的C++項(xiàng)目,本文主要介紹了CMake語(yǔ)法及CMakeList.txt簡(jiǎn)單使用小結(jié),具有一定的參考價(jià)值,感興趣的可以了解一下2022-05-05
opencv2實(shí)現(xiàn)10張圖像上下左右拼接融合
這篇文章主要為大家詳細(xì)介紹了opencv2實(shí)現(xiàn)10張圖像上下左右拼接融合,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03
C++ static函數(shù)調(diào)用問(wèn)題小結(jié)
靜態(tài)成員變量是在程序編譯時(shí)分配空間,而在程序結(jié)束時(shí)釋放空間,這篇文章主要介紹了C++ static函數(shù)調(diào)用問(wèn)題小結(jié),需要的朋友可以參考下2024-03-03
基于C語(yǔ)言實(shí)現(xiàn)個(gè)人通訊錄管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了基于C語(yǔ)言實(shí)現(xiàn)個(gè)人通訊錄管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-06-06

