從頭學習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)內(nèi)容
- 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)內(nèi)使用另一個循環(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;
}
總結
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內(nèi)容!

