C语言三目运算符 - C语言零基础入门教程
目錄
- 一.C 語言三目運算符簡介
- 二.C 語言三目運算符實戰(zhàn)
- 1.使用三目運算符
- 2.使用 if / else 條件判斷
- 三.猜你喜歡
零基礎(chǔ) C/C++ 學習路線推薦 : C/C++ 學習目錄 >> C 語言基礎(chǔ)入門
一.C 語言三目運算符簡介
三目運算符,又稱條件運算符,是計算機語言([C](https://www.codersrc.com/c%e8%af%ad%e8%a8%80%e5%9f%ba%e7%a1%80),C++,Java等)的重要組成部分。它是唯一有 3 個操作數(shù)的運算符,所以有時又稱為三元運算符,其實三目運算符和 if / else 條件判斷類似。
三目運算符的書寫:
//三目運算符 <表達式1> ? <表達式2> : <表達式3>;返回值:先求表達式 1 的值,如果為真,則執(zhí)行表達式 2,并返回表達式 2 的結(jié)果;如果表達式 1 的值為假,則執(zhí)行表達式 3,并返回表達式 3 的結(jié)果。
舉個例子:對于條件表達式 b ? x : y,先判斷條件 b 真假,如果 b 的值為 true ,那么返回表達式 x 的計算結(jié)果;否則,計算 y 的值,返回表達式 y 的計算結(jié)果。
一個條件表達式絕不會既計算 x,又計算 y(就好比在 if / else 條件判斷中,不可能既執(zhí)行 if 后的代碼又執(zhí)行 else 之后的代碼)。
注意:在 C 語言中,結(jié)果 1 和 結(jié)果 2 的類型必須一致。對于上面的代碼,使用 if / else 條件判斷同樣也能實現(xiàn):
//if/else條件判斷 if(<表達式1>) {//<表達式2> } else {//<表達式3> }二.C 語言三目運算符實戰(zhàn)
對于以下代碼,我們分別使用三目運算符和 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;//三目運算符返回整數(shù)c = a ? (a + b) : (a - b);//因為表達式1(a=1),條件為真,所以執(zhí)行表達式2,返回a+b的結(jié)果printf("整數(shù)c = %d\n",c);//三目運算符返回字符串char *s = 0 ? "條件成立" : "條件不成立";//因為表達式1(0),條件為假,所以執(zhí)行表達式3,返回字符串"c條件不成立"printf("字符串s = %s\n", s);printf("main函數(shù)結(jié)束!\n");return 0; } /* 輸出結(jié)果:整數(shù)c = 3 字符串s = 條件不成立 main函數(shù)結(jié)束! 請按任意鍵繼續(xù). . .*/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;elsec = a - b;printf("整數(shù)c = %d\n",c);char *s = NULL; //初始化if (0) // 0等價于falses = "條件成立";elses = "條件不成立";printf("字符串s = %s\n", s);printf("main函數(shù)結(jié)束!\n");return 0; } /* 輸出結(jié)果:整數(shù)c = 3 字符串s = 條件不成立 main函數(shù)結(jié)束! 請按任意鍵繼續(xù). . .*/注意:
- 1.不管是C或者C++中,false 和 0 兩者等價,true 和 1兩者等價;
- 2.字符串占位符是 %s ,整形占位符是 %d ,其他 C 語言變量類型占位符請參考:C 語言格式控制符/占位符
三.猜你喜歡
未經(jīng)允許不得轉(zhuǎn)載:猿說編程 ? C 語言三目運算符
總結(jié)
以上是生活随笔為你收集整理的C语言三目运算符 - C语言零基础入门教程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 什么是迭代器
- 下一篇: Arraylist线程不安全原因