最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語(yǔ)言示例講解if else語(yǔ)句的用法

 更新時(shí)間:2022年06月13日 16:33:59   作者:要努力丫!  
這篇文章主要介紹C語(yǔ)言中的If Else語(yǔ)句怎么使用,在日常操作中,相信很多人在If Else語(yǔ)句怎么使用問(wèn)題上存在疑惑,小編查閱了各式資料,整理出使用方法,接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧

1、前言

(1)C語(yǔ)言是結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言。C語(yǔ)言的三種基本程序結(jié)構(gòu)分別是:

  • 順序結(jié)構(gòu):按照程序順序執(zhí)行
  • 選擇結(jié)構(gòu):根據(jù)判斷結(jié)果選擇分支方向
  • 循環(huán)結(jié)構(gòu):指有一個(gè)循環(huán)體,可以根據(jù)判斷條件決定循環(huán)多少次

(2)分支語(yǔ)句(選擇語(yǔ)句)和循環(huán)語(yǔ)句

(3)什么是語(yǔ)句?

C語(yǔ)言中由一個(gè)分號(hào)(;)隔開(kāi)的就是一條語(yǔ)句。

2、if語(yǔ)句的語(yǔ)法結(jié)構(gòu)

大致分為三種:

if(表達(dá)式)
    語(yǔ)句;

if(表達(dá)式)
    語(yǔ)句1;
else
    語(yǔ)句2;

//多分支
if(表達(dá)式1)
    語(yǔ)句1;
else if(表達(dá)式2)
    語(yǔ)句2;
else
    語(yǔ)句3;

3、關(guān)于if else語(yǔ)句的示例

示例一:了解if else結(jié)構(gòu)

#include <stdio.h>
int main()
{
	int age = 10;
	if (age >= 18)
		printf("成年\n");
	return 0;
}

運(yùn)行該程序,將不會(huì)有打印結(jié)果;如果在此基礎(chǔ)上加上

	else
		printf("未成年\n");

則運(yùn)行結(jié)果為:

未成年

示例二:if或else默認(rèn)只執(zhí)行它下面的一句

將示例一中的年齡10改為20,再在else的語(yǔ)句下加上一句,查看運(yùn)行結(jié)果。

#include <stdio.h>
int main()
{
	int age = 20;
	if (age >= 18)
		printf("成年\n");
	else
		printf("未成年\n");
		printf("不能去網(wǎng)吧\n");
	return 0;
}

運(yùn)行結(jié)果:

成年

不能去網(wǎng)吧

顯然這個(gè)結(jié)果是不合理的,我們想要的是如果是“未成年”,才要打印“不能去網(wǎng)吧”,但是輸入的年齡是20,顯示“成年”就可以了,它還是顯示了“不能去網(wǎng)吧”。這就證明if/else默認(rèn)的是只執(zhí)行它下面的一條語(yǔ)句。在我敲這段代碼的時(shí)候,實(shí)際上這個(gè)編譯器它已經(jīng)很智能了,能體現(xiàn)出if/else默認(rèn)的是只執(zhí)行它下面的一條語(yǔ)句這個(gè)性質(zhì)的一個(gè)表現(xiàn)就是:else下的第二條語(yǔ)句它是自動(dòng)和else對(duì)齊的,為了查看程序是否能只打印“成年”,本次代碼特地手動(dòng)給else下的第二條printf語(yǔ)句之前敲了tab鍵。

那么怎樣才能讓程序?qū)崿F(xiàn)我們想要的功能呢?

將else里面要執(zhí)行的兩條語(yǔ)句給它用大括號(hào)括起來(lái),一個(gè)“{}”就是一個(gè)代碼塊,就是一個(gè)邏輯。

{
    語(yǔ)句列表;
}

代碼修正如下:

#include <stdio.h>
int main()
{
	int age = 20;
	if (age >= 18)
	{
		printf("成年\n");
	}
	else
	{
		printf("未成年\n");
		printf("不能去網(wǎng)吧\n");
	}
	return 0;
}

示例三:if else的多分支情況

錯(cuò)誤示例:

int main()
{
	int age = 60;
	if (age < 18)
		printf("少年\n");
	else if (18 <= age < 26)
		printf("青年\n");
	return 0;
}

運(yùn)行該程序以后,會(huì)打印“青年”。為什么會(huì)出現(xiàn)這樣的結(jié)果呢?

因此雖然60并不在18到26之間,也會(huì)打印“青年”。

正確寫(xiě)法:

int main()
{
	int age = 60;
	if (age < 18)
		printf("少年\n");
	else if (age >= 18 && age < 26)
		printf("青年\n");
	else if (age >= 26 && age < 40)
		printf("壯年\n");
	else if (age >= 40 && age < 60)
		printf("中老年\n");
	else 
		printf("老年\n");
	return 0;
}

運(yùn)行結(jié)果為:老年

示例四:懸空else

int main()
{
	int a = 0;
	int b = 2;
	if (a == 1)
		if (b == 2)
			printf("hi\n");
	else
		printf("hello\n");
	return 0;
}

運(yùn)行該代碼之后,打印窗口無(wú)結(jié)果。為什么呢?

來(lái)看一下如果我不手動(dòng)刪除tab間隔,編譯器是怎么識(shí)別這段代碼的。(我再給它加上{}使得程序的可讀性更高一些)

int main()
{
	int a = 0;
	int b = 2;
	if (a == 1)
	{
		if (b == 2)
		{
			printf("hi\n");
		}
		else
		{
			printf("hello\n");
		}
	}
	return 0;
}

可以看到,else與離他最近的那個(gè)if匹配了,因?yàn)閍的值是0,所以就不會(huì)進(jìn)入第一個(gè)if,自然也就不會(huì)有打印結(jié)果了。所以說(shuō)代碼的分隔很重要,加上{}將代碼分隔開(kāi)可以使得程序的可讀性提高。

4、if else 書(shū)寫(xiě)形式的對(duì)比

代碼一以及代碼二實(shí)際上實(shí)現(xiàn)的功能是一樣的。下面利用一段代碼來(lái)解釋一下為什么說(shuō)代碼一和代碼二實(shí)際上是一樣的。

int test()
{
	if (1)
		return 0;
	printf("haha\n");
	return 1;
}
int main()
{
	test();
	return 0;
}

運(yùn)行該程序的時(shí)候,發(fā)現(xiàn)什么都不會(huì)打印。摁下fn+f10調(diào)試代碼,可以看到執(zhí)行完test中的return 0就直接跳過(guò)了printf(“haha\n”);return 1;這兩句。

修改代碼如下:

int test()
{
	if (0)
		return 0;
	return 1;
}
int main()
{
	test();
	return 0;
}

可以看到代碼走到if (0)后,再走就走到return 1了。

代碼三與代碼四也是一樣的,為什么把num == 5 寫(xiě)為 5 == num 呢?為了避免出現(xiàn)一下情況

int main()
{
	int num = 1;
	if (num = 5)
	{
		printf("hello\n");
	}
}

將 == 寫(xiě)成了 =,就變成了將5賦值給num,此時(shí)判斷條件為真,就不是判斷num是否是5了,程序最終會(huì)打印hello。但是在代碼四里面如果將5 == num 寫(xiě)為 5 = num程序就報(bào)錯(cuò)了。

5、例子

輸出1-100之間的奇數(shù)

int main()
{
	int i;
	for(i = 0; i < 100; i++)
		if (i % 2 == 1)
		{
			printf("%d\t", i);
		}
		else
		{
			printf("");
		}
	return 0;
}

1       3       5       7       9       11      13      15      17      19      21      23      25      27      29     31       33      35      37      39      41      43      45      47      49      51      53      55      57      59     61       63      65      67      69      71      73      75      77      79      81      83      85      87      89     91       93      95      97      99 

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

相關(guān)文章

  • C++掃盲篇之指針詳解

    C++掃盲篇之指針詳解

    C++中一個(gè)指針的使用就已經(jīng)讓很多人欲哭無(wú)淚,可是更不幸的是他還有指向指針的指針,這篇文章主要給大家介紹了關(guān)于C++掃盲篇之指針的相關(guān)資料,需要的朋友可以參考下
    2022-03-03
  • C++用easyx圖形庫(kù)實(shí)現(xiàn)障礙跑酷小游戲

    C++用easyx圖形庫(kù)實(shí)現(xiàn)障礙跑酷小游戲

    這篇文章主要為大家詳細(xì)介紹了C++用easyx圖形庫(kù)實(shí)現(xiàn)障礙跑酷小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-12-12
  • 使用c語(yǔ)言輕松實(shí)現(xiàn)動(dòng)態(tài)內(nèi)存管

    使用c語(yǔ)言輕松實(shí)現(xiàn)動(dòng)態(tài)內(nèi)存管

    這篇文章主要介紹了使用c語(yǔ)言輕松實(shí)現(xiàn)動(dòng)態(tài)內(nèi)存管,本文章內(nèi)容詳細(xì),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,需要的朋友可以參考下
    2023-01-01
  • C++中main函數(shù)怎樣調(diào)用類內(nèi)函數(shù)

    C++中main函數(shù)怎樣調(diào)用類內(nèi)函數(shù)

    這篇文章主要介紹了C++中main函數(shù)怎樣調(diào)用類內(nèi)函數(shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)易通訊錄完整流程

    C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)易通訊錄完整流程

    這篇文章主要為大家介紹了C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)易通訊錄的完整流程,每個(gè)環(huán)節(jié)都有完整代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2022-02-02
  • C++中的四個(gè)默認(rèn)成員函數(shù)與運(yùn)算符重載詳解

    C++中的四個(gè)默認(rèn)成員函數(shù)與運(yùn)算符重載詳解

    這篇文章主要給大家介紹了關(guān)于C++中四個(gè)默認(rèn)成員函數(shù)與運(yùn)算符重載的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)跟著小編一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-08-08
  • C++動(dòng)態(tài)規(guī)劃之背包問(wèn)題解決方法

    C++動(dòng)態(tài)規(guī)劃之背包問(wèn)題解決方法

    這篇文章主要介紹了C++動(dòng)態(tài)規(guī)劃之背包問(wèn)題解決方法,實(shí)例分析了背包問(wèn)題的原理與C++實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-04-04
  • 詳談signed 關(guān)鍵字

    詳談signed 關(guān)鍵字

    c++中關(guān)鍵字有幾十個(gè),其中類型修飾關(guān)鍵字有l(wèi)ong, short, singed, unsigned。今天我們就來(lái)談一下經(jīng)常被大家忽視的signed關(guān)鍵字
    2015-01-01
  • 詳解C++17中nodiscard標(biāo)記符的使用

    詳解C++17中nodiscard標(biāo)記符的使用

    在C++?17中引入了一個(gè)標(biāo)記符nodiscard,用于聲明一個(gè)?“非棄值(no-discard)表達(dá)式”。這篇文章就來(lái)和大家來(lái)聊一聊nodiscard標(biāo)記符的使用吧
    2023-02-02
  • OpenCV實(shí)現(xiàn)幀間差分法詳解

    OpenCV實(shí)現(xiàn)幀間差分法詳解

    這篇文章主要為大家詳細(xì)介紹了OpenCV實(shí)現(xiàn)幀間差分法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03

最新評(píng)論

苗栗市| 买车| 微博| 金沙县| 获嘉县| 嘉义县| 芮城县| 垦利县| 临洮县| 沽源县| 锡林浩特市| 通渭县| 平塘县| 岗巴县| 科技| 仙居县| 武隆县| 宁乡县| 金溪县| 长沙市| 集贤县| 永济市| 东乌珠穆沁旗| 乌兰察布市| 城步| 涞源县| 柞水县| 胶南市| 保德县| 崇州市| 廊坊市| 江孜县| 宜丰县| 扎兰屯市| 榕江县| 祁东县| 嘉义县| 崇义县| 桃江县| 大丰市| 揭西县|