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

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

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

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

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

while循環(huán)

while語句的基本格式:

while(表達式)

{

循環(huán)語句;

}

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

while語句的理解:

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

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

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

4當(dāng)while循環(huán)語句中出現(xiàn)continue語句時,continue語句的作用是結(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;
}

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

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,但不同的是第二個程序結(jié)束了,而第三個程序沒結(jié)束,進入了死循環(huán),為什么這樣會呢?我們知道continue的作用是結(jié)束本次循環(huán)(即continue后面的語句不在執(zhí)行),這時候i便會一直等于5進入到if中不斷的跳過后面的語句而進入的死循環(huán)中。

for循環(huán)

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

for語句的基本格式:

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

{

循環(huán)語句;

}

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

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

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

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

當(dāng)程序來到for語句中的時,首先是來到表達式1初始化循環(huán)變量,在來到表達式式2進行初始循環(huán)變量判斷是否滿足循環(huán)條件,若不滿足則跳出循環(huán),滿足則執(zhí)行循環(huán)中的語句,執(zhí)行完后來到表達式3調(diào)整循環(huán)條件,在指向表達式2進行判斷,直到不滿足循環(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;
}

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

for語句的一些建議:

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

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

int i = 0;

//前閉后開的寫法 f

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

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

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

這里是拓展部分大家可以細細體會。

for語句的變種:

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

代碼3:打印10個hehe

代碼4:打印2個hehe

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

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

dowhile循環(huán)

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

do語句的語法:

do

{

循環(huán)語句;

}while(表達式);

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

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

在do語句中的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是跳過本次循環(huán)后面的語句。

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

相關(guān)文章

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

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

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

    C語言簡明介紹指針的使用

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

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

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

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

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

    在C++中使用HP-Socket

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

    如何理解C++ 臨時變量的常量性

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

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

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

    引用numpy出錯詳解及解決方法

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

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

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

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

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

最新評論