從頭學習C語言之for語句和循環(huán)嵌套
for語句:
前言:
循環(huán)的基本結構離不開三個基本動作:
- 初始化計數(shù)器
- 循環(huán)條件
- 更新計數(shù)器
int count=0; while(count<10) { printf("fishc!\n); count=count+1;
注意事項:
1.C99允許再for語句的表達式1中定義變量(在for循環(huán)里定義的變量出了循環(huán)就不能用了),
如:for(int i=0;i<100;i++)
2.在編譯時要加上-std=c99,
如:gcc -std=c99 text11_2.c && ./a.out
語句形式:
…//其他語句
for(表達式1;表達式2;表達式3)
循環(huán)體
…///其他語句
執(zhí)行順序:
- 1.初始化
- 2.循環(huán)條件判斷
- 3.執(zhí)行循環(huán)內容
- 4.調整條件
- 5.234循環(huán)進行,判斷為錯則停止循環(huán)
三個表達式用分號隔開,其中:
- 表達式1是循環(huán)初始化表達式
- 表達式2是循環(huán)條件表達式
- 表達式3是循環(huán)調整表達式
流程圖:
靈活運用:
- 表達式1,表達式2和表達式3可以按照需要進行省略(但分號不能?。?/li>
- for(;表達式2;表達式3)
- for(表達式1;表達式2;)
- for(表達式1; ; )
- for(; ; )
- …
示例:
例1:打印十次"孫哥真牛逼"
#include <stdio.h> int main() { int count; for(count=0;count<10;count++) { printf("孫哥真牛逼!\n"); } return 0; }
例2:判斷一個數(shù)是否為素數(shù):
- 素數(shù)?在大于1的自然數(shù)中,除了1和此數(shù)自身外,無法被其他自然數(shù)整除的數(shù)。
- 關于素數(shù)的求法有很多,這里我們用比較樸素暴力的方式:迭代測試2到num/2所有整數(shù)是否能被整除(num為待測試的整數(shù)),如果沒有出現(xiàn)能被整除的整數(shù),呢么它就是素數(shù)。
#include<stdio.h> int main() { int i,num; _Bool flag=1; printf("請輸入一個整數(shù)來判斷是否為素數(shù)。"); scanf("%d",&num); for(i=2;i<num/2;i++) { if(num%i==0) { flag=0; } } if(flag) { printf("%d是一個素數(shù)!\n",num); } else { printf("%d不是一個素數(shù)!\n",num); } return 0; }
循環(huán)嵌套:
C 語言允許在一個循環(huán)內使用另一個循環(huán)。
語句形式:
…//其他語句
for(表達式1;表達式2;表達式3)
{
for(表達式1;表達式2;表達式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:將結果以兩位數(shù)的形式展現(xiàn)。 } putchar('\n');//用putchar('\n')將光標移到下一行。 } return 0; }
總結
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!
相關文章
VisualStudio 使用Visual Leak Detector檢查內存泄漏
這篇文章主要介紹了VisualStudio 使用Visual Leak Detector檢查內存泄漏的相關資料,需要的朋友可以參考下2015-07-07C++11特性小結之decltype、類內初始化、列表初始化返回值
這篇文章主要介紹了C++11特性小結之decltype、類內初始化、列表初始化返回值,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-05-05