目錄
零基礎 C/C++ 學習路線推薦 : C/C++ 學習目錄 >> C 語言基礎入門
一.C 語言三目運算符簡介
三目運算符,又稱條件運算符,是計算機語言([C](https://www.codersrc.com/c%e8%af%ad%e8%a8%80%e5%9f%ba%e7%a1%80)
,C++
,Java
等)的重要組成部分。它是唯一有 3 個操作數的運算符,所以有時又稱為三元運算符,其實三目運算符和 if
/ else
條件判斷類似。
三目運算符的書寫:
//三目運算符
<表達式1> ? <表達式2> : <表達式3>;
返回值:先求表達式 1 的值,如果為真,則執行表達式 2,並返回表達式 2 的結果;如果表達式 1 的值為假,則執行表達式 3,並返回表達式 3 的結果。
舉個例子:對於條件表達式 b ? x : y,先判斷條件 b 真假,如果 b 的值為 true ,那么返回表達式 x 的計算結果;否則,計算 y 的值,返回表達式 y 的計算結果。
一個條件表達式絕不會既計算 x,又計算 y(就好比在 if / else 條件判斷中,不可能既執行 if 后的代碼又執行 else 之后的代碼)。
注意:在 C 語言中,結果 1 和 結果 2 的類型必須一致。對於上面的代碼,使用 if / else 條件判斷同樣也能實現:
//if/else條件判斷
if(<表達式1>)
{
//<表達式2>
}
else
{
//<表達式3>
}
二.C 語言三目運算符實戰
對於以下代碼,我們分別使用三目運算符和 c
語言條件判斷完成,示例如下:
1.使用三目運算符
/************************************************************************/
//@Author:猿說編程
//@Blog(個人博客地址): www.codersrc.com
//@File:C語言三目運算符
//@Time:2021/05/28 08:00
//@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!
/************************************************************************/
#include "stdafx.h"
#include <stdio.h>
int main()
{
int a = 1;
int b = 2;
int c = 0;
//三目運算符返回整數
c = a ? (a + b) : (a - b);//因為表達式1(a=1),條件為真,所以執行表達式2,返回a+b的結果
printf("整數c = %d\n",c);
//三目運算符返回字符串
char *s = 0 ? "條件成立" : "條件不成立";//因為表達式1(0),條件為假,所以執行表達式3,返回字符串"c條件不成立"
printf("字符串s = %s\n", s);
printf("main函數結束!\n");
return 0;
}
/*
輸出結果:
整數c = 3
字符串s = 條件不成立
main函數結束!
請按任意鍵繼續. . .
*/
2.使用 if
/ else
條件判斷
/************************************************************************/
//@Author:猿說編程
//@Blog(個人博客地址): www.codersrc.com
//@File:C語言三目運算符
//@Time:2021/05/28 08:00
//@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!
/************************************************************************/
#include "stdafx.h"
#include <stdio.h>
int main()
{
int a = 1;
int b = 2;
int c = 0;
if (a)
c = a + b;
else
c = a - b;
printf("整數c = %d\n",c);
char *s = NULL; //初始化
if (0) // 0等價於false
s = "條件成立";
else
s = "條件不成立";
printf("字符串s = %s\n", s);
printf("main函數結束!\n");
return 0;
}
/*
輸出結果:
整數c = 3
字符串s = 條件不成立
main函數結束!
請按任意鍵繼續. . .
*/
注意:
- 1.不管是
C
或者C++
中,false
和0
兩者等價,true
和1
兩者等價; - 2.字符串占位符是
%s
,整形占位符是%d
,其他C
語言變量類型占位符請參考:C 語言格式控制符/占位符
三.猜你喜歡
- 安裝 Visual Studio
- 安裝 Visual Studio 插件 Visual Assist
- Visual Studio 2008 卸載
- Visual Studio 2003/2015 卸載
- 設置 Visual Studio 字體/背景/行號
- C 語言 Hello World
- C 語言代碼注釋
- C 語言數據類型 / 變量類型
- C 語言變量聲明和定義
- C 語言格式控制符/占位符
- C 語言 printf 函數
- C 語言條件判斷 if / else
- C 語言邏輯運算符
- C 語言三目運算符
本文由博客 - 猿說編程 猿說編程 發布!