欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語(yǔ)言超細(xì)致講解循環(huán)語(yǔ)句

 更新時(shí)間:2022年05月11日 15:34:47   作者:^O^玩轉(zhuǎn)編程  
我們說(shuō)到當(dāng)滿(mǎn)足特定條件時(shí),就會(huì)執(zhí)行if語(yǔ)句或者switch語(yǔ)句后面的語(yǔ)句,否則不執(zhí)行,但是這只能執(zhí)行一次,在日常生活中,有些事情是需要重復(fù)去做的,C語(yǔ)句就為此引入了循環(huán)語(yǔ)句。所以今天繼續(xù)為大家分享C語(yǔ)言循環(huán)家族

C語(yǔ)言循環(huán)家族

家族成員有while語(yǔ)句,for語(yǔ)句和do....while語(yǔ)句。這些成員都能實(shí)現(xiàn)循環(huán),但又各有特點(diǎn)。今天就由我?guī)ьI(lǐng)大家一起認(rèn)識(shí)他們吧!

while循環(huán)

while語(yǔ)句的基本格式:

while(表達(dá)式)

{

循環(huán)語(yǔ)句;

}

while語(yǔ)句執(zhí)行的流程:

while語(yǔ)句的理解:

1當(dāng)表達(dá)式為假時(shí)(0為假),不執(zhí)行while語(yǔ)句中的內(nèi)容。

2當(dāng)表達(dá)式為真的時(shí)候(非0),便循環(huán)執(zhí)行while循環(huán)語(yǔ)句的內(nèi)容,直到表達(dá)式為假的時(shí)候便跳出循環(huán)。

3當(dāng)while循環(huán)語(yǔ)句中出現(xiàn)break語(yǔ)句時(shí),break語(yǔ)句的作用是結(jié)束所有循環(huán)。

4當(dāng)while循環(huán)語(yǔ)句中出現(xiàn)continue語(yǔ)句時(shí),continue語(yǔ)句的作用是結(jié)束本次循環(huán)。

代碼理解while:

我們要想在屏幕中打印1~10便可以借助循環(huán)

#define  _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//打印1~10
int main()
{
	int i = 1;
	while (i <= 10)
	{
		printf("%d ", i);
		i++;
	}
	return 0;
}

while循環(huán)中出現(xiàn)break:

#include<stdio.h>
int main()
{
	int i = 1;
	while (i <= 10)
	{
		if (i == 5)
		{
			break;
		}
		printf("%d ", i);
		i++;
	}
	return 0;
}

從這個(gè)代碼中我們可以看出,當(dāng)程序進(jìn)入到while循環(huán)中的時(shí)候,當(dāng)i==5時(shí)便會(huì)進(jìn)入到if語(yǔ)句中,這時(shí)后便會(huì)執(zhí)行break,從上面我們可以知道break作用是停止所有循環(huán)。那么屏幕中此時(shí)打印到1~4便會(huì)停止。

while循環(huán)中出現(xiàn)continue:

#include<stdio.h>
int main()
{
	int i = 1;
	while (i <= 10)
	{
		if (i == 5)
		{
			continue;
		}
		printf("%d ", i);
		i++;
	}
	return 0;
}

當(dāng)我們分析這段代碼可以發(fā)現(xiàn),就是把break換成了continue,屏幕同樣打印了1~4,但不同的是第二個(gè)程序結(jié)束了,而第三個(gè)程序沒(méi)結(jié)束,進(jìn)入了死循環(huán),為什么這樣會(huì)呢?我們知道continue的作用是結(jié)束本次循環(huán)(即continue后面的語(yǔ)句不在執(zhí)行),這時(shí)候i便會(huì)一直等于5進(jìn)入到if中不斷的跳過(guò)后面的語(yǔ)句而進(jìn)入的死循環(huán)中。

for循環(huán)

在C語(yǔ)言中我們既然有了while循環(huán)為什么還要來(lái)一個(gè)for循環(huán)呢?大家可以帶這個(gè)疑問(wèn)繼續(xù)往下看。

for語(yǔ)句的基本格式:

for(表達(dá)式1; 表達(dá)式2; 表達(dá)式3)

{

循環(huán)語(yǔ)句;

}

表達(dá)式1: 為初始化部分,用于初始化循環(huán)變量的。

表達(dá)式2 :為條件判斷部分,用于判斷循環(huán)時(shí)候終止。

表達(dá)式3 :為調(diào)整部分,用于循環(huán)條件的調(diào)整。

for語(yǔ)句執(zhí)行的流程:

當(dāng)程序來(lái)到for語(yǔ)句中的時(shí),首先是來(lái)到表達(dá)式1初始化循環(huán)變量,在來(lái)到表達(dá)式式2進(jìn)行初始循環(huán)變量判斷是否滿(mǎn)足循環(huán)條件,若不滿(mǎn)足則跳出循環(huán),滿(mǎn)足則執(zhí)行循環(huán)中的語(yǔ)句,執(zhí)行完后來(lái)到表達(dá)式3調(diào)整循環(huán)條件,在指向表達(dá)式2進(jìn)行判斷,直到不滿(mǎn)足循環(huán)條件而跳出循環(huán)。

用for打印1~10:

#include<stdio.h>
int main()
{
	int i = 1;
	for (i = 1;i <= 10;i++)
	{
		printf("%d ", i);
	}
	return 0;
}

用下面代碼理解for循環(huán)中的break和continue

#include<stdio.h>
int main()
{
	int i = 1;
	for (i = 1;i <= 10;i++)
	{
		if (i == 5)
		{
			break;
		}
		printf("%d ", i);
	}
	return 0;
}

#include<stdio.h>
int main()
{
	int i = 1;
	for (i = 1;i <= 10;i++)
	{
		if (i == 5)
		{
			continue;
		}
		printf("%d ", i);
	}
	return 0;
}

大家細(xì)細(xì)體會(huì)代碼1和代碼2,可以看出break和continue在循環(huán)中的作用都是一樣的,但是在不同的循環(huán)語(yǔ)句可能會(huì)出現(xiàn)不同的循環(huán)效果。

for語(yǔ)句的一些建議:

1 不可在for 循環(huán)體內(nèi)修改循環(huán)變量,防止 for 循環(huán)失去控制

2 建議for語(yǔ)句的循環(huán)控制變量的取值采用“前閉后開(kāi)區(qū)間”寫(xiě)法

int i = 0;

//前閉后開(kāi)的寫(xiě)法 f

or(i=0; i<10; i++) {}

//兩邊都是閉區(qū)間

for(i=0; i<=9; i++) {}

這里是拓展部分大家可以細(xì)細(xì)體會(huì)。

for語(yǔ)句的變種:

#include <stdio.h>
int main()
{
 //代碼1
 for(;;)
 {
 printf("hehe\n");
 }
    //for循環(huán)中的初始化部分,判斷部分,調(diào)整部分是可以省略的,但是不建議初學(xué)時(shí)省略,容易導(dǎo)致問(wèn)
題。
    //代碼2
    int i = 0;
    int j = 0;
    //這里打印多少個(gè)hehe?
    for(i=0; i<10; i++)
   {
        for(j=0; j<10; j++)
       {
 printf("hehe\n");
       }
   }
    //代碼3
    int i = 0;
    int j = 0;
    //如果省略掉初始化部分,這里打印多少個(gè)hehe?
    for(; i<10; i++)
   {
        for(; j<10; j++)
       {
 printf("hehe\n");
       }
   }
 //代碼4-使用多余一個(gè)變量控制循環(huán)
 int x, y;
    for (x = 0, y = 0; x<2 && y<5; ++x, y++)
   {
        printf("hehe\n");
   }
 return 0;
}

代碼1:死循環(huán)打印hehe

代碼2:打印100個(gè)hehe

代碼3:打印10個(gè)hehe

代碼4:打印2個(gè)hehe

看到這里大家知道為什么要出現(xiàn)for語(yǔ)句了嗎?

我相信大家一定發(fā)現(xiàn)了while循環(huán)中依然存在循環(huán)的三個(gè)必須條件,但是由于風(fēng)格的問(wèn)題使得三個(gè)部分很可能偏離較 遠(yuǎn),這樣 查找修改就不夠集中和方便。所以,for循環(huán)的風(fēng)格更勝一籌;for循環(huán)使用的頻率也最高。

dowhile循環(huán)

在這里我就開(kāi)門(mén)見(jiàn)山的和大家說(shuō)do.....while循環(huán)的特點(diǎn):循環(huán)至少執(zhí)行一次,使用的場(chǎng)景有限,所以不是經(jīng)常使用。

do語(yǔ)句的語(yǔ)法:

do

{

循環(huán)語(yǔ)句;

}while(表達(dá)式);

do語(yǔ)句的執(zhí)行流程:

從執(zhí)行圖中,程序到這里最少執(zhí)行一次循環(huán)中的語(yǔ)句,這里需要注意的是先執(zhí)行語(yǔ)句在進(jìn)行判斷循環(huán)條件

在do語(yǔ)句中的break和continue:

#include<stdio.h>
int main()
{
	int i = 1;
	do
	{
		if (i == 5)
		{
			break;
		}
		printf("%d ", i);
		i++;
	} while (i <= 10);
	return 0;
}

#include<stdio.h>
int main()
{
	int i = 1;
	do
	{
		i++;
		if (i == 5)
		{
			continue;
		}
		printf("%d ", i);
	
	} while (i <= 10);
	return 0;
}

大家只要記住break是中止循環(huán),而continue是跳過(guò)本次循環(huán)后面的語(yǔ)句。

到此這篇關(guān)于C語(yǔ)言超細(xì)致講解循環(huán)語(yǔ)句的文章就介紹到這了,更多相關(guān)C語(yǔ)言循環(huán)語(yǔ)句內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • TypeScript的函數(shù)定義與使用案例教程

    TypeScript的函數(shù)定義與使用案例教程

    這篇文章主要介紹了TypeScript的函數(shù)定義與使用案例教程,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C語(yǔ)言簡(jiǎn)明介紹指針的使用

    C語(yǔ)言簡(jiǎn)明介紹指針的使用

    C語(yǔ)言這門(mén)課程在計(jì)算機(jī)的基礎(chǔ)教學(xué)中一直占有比較重要的地位,然而要想突破C語(yǔ)言的學(xué)習(xí),對(duì)指針的掌握是非常重要的,本文將具體針對(duì)指針的基礎(chǔ)做詳盡的介紹
    2022-06-06
  • C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法

    C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法

    這篇文章主要介紹了C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法,涉及C語(yǔ)言針對(duì)數(shù)組的遍歷與判斷技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07
  • C語(yǔ)言實(shí)現(xiàn)3個(gè)數(shù)從小到大排序/輸出的方法示例

    C語(yǔ)言實(shí)現(xiàn)3個(gè)數(shù)從小到大排序/輸出的方法示例

    這篇文章主要給大家介紹了關(guān)于如何利用C語(yǔ)言實(shí)現(xiàn)3個(gè)數(shù)從小到大排序/輸出的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用C語(yǔ)言具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • 在C++中使用HP-Socket

    在C++中使用HP-Socket

    這篇文章主要介紹了C++中簡(jiǎn)單使用HP-Socket,HP-Socket 是一套通用的高性能 TCP/UDP /HTTP 通信 框架 ,包含服務(wù)端組件、客戶(hù)端組件和 Agent 組件,廣泛適用于各種不同應(yīng)用場(chǎng)景的 TCP/UDP /HTTP 通信系統(tǒng),下面來(lái)看看更具體的介紹吧
    2021-11-11
  • 如何理解C++ 臨時(shí)變量的常量性

    如何理解C++ 臨時(shí)變量的常量性

    這篇文章主要介紹了如何理解C++ 臨時(shí)變量的常量性,幫助大家更好的理解和學(xué)習(xí)c++ 變量,感興趣的朋友可以了解下
    2020-08-08
  • OpenCV cv.Mat與.txt文件數(shù)據(jù)的讀寫(xiě)操作

    OpenCV cv.Mat與.txt文件數(shù)據(jù)的讀寫(xiě)操作

    這篇文章主要介紹了OpenCV cv.Mat 與 .txt 文件數(shù)據(jù)的讀寫(xiě)操作,現(xiàn)在分享給大家,也給大家做個(gè)參考
    2018-05-05
  • 引用numpy出錯(cuò)詳解及解決方法

    引用numpy出錯(cuò)詳解及解決方法

    這篇文章主要介紹了引用numpy出錯(cuò) 解決方法的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • 新舊MFC版本實(shí)現(xiàn)CEdit透明的2種方法的實(shí)例代碼

    新舊MFC版本實(shí)現(xiàn)CEdit透明的2種方法的實(shí)例代碼

    新舊MFC版本實(shí)現(xiàn)CEdit透明的2種方法的實(shí)例代碼,需要的朋友可以參考一下
    2013-03-03
  • C語(yǔ)言函數(shù)傳遞數(shù)組和傳遞地址的區(qū)別你知道嗎

    C語(yǔ)言函數(shù)傳遞數(shù)組和傳遞地址的區(qū)別你知道嗎

    這篇文章主要介紹了C語(yǔ)言中數(shù)組作為函數(shù)的參數(shù)以及返回值的使用簡(jiǎn)單入門(mén),這里以一維數(shù)組作為基本條件進(jìn)行例子講解,需要的朋友可以參考下
    2021-09-09

最新評(píng)論