C / C ++条件式

C / C ++条件式は三元演算子を使用しますか?:完了。適切な条件下でifelseステートメントに置き換えることができます。
条件式の利点は、式操作の結果を直接返すことができることです。

条件式の使用は3つの部分に分けられます。例は次のとおりです。

c ? a : b;

ここで、cは判断条件であり、aとbは特定の値または式にすることができます。
式は最初にcを判断します。cの判断結果が0(またはtrue)でない場合、aの値または操作の結果が返されます。cの判断結果が0(またはfalse)の場合、bの値または操作の結果が返されます。次のように:

a、bは特定の値です。

a > b ? a : b;

aとbは計算式です。

a > b ? (a - b) : (b - a);

サンプルプログラム:
最大2つの数値を見つけます:

#include <stdio.h>

int main() {
    
    
	int a, b, max;
	
	scanf("%d%d", &a, &b);
	
	max = a > b ? a : b;
	
	printf("%d", max);
	
	return 0;
} 

に相当

#include <stdio.h>

int main() {
    
    
	int a, b, max;
	
	scanf("%d%d", &a, &b);
	
	if (a > b) {
    
    
		max = a;	
	} else {
    
    
		max = b;	
	}
	
	printf("%d", max);
	
	return 0;
} 

サンプルプログラム:
2つの数値の違いを見つけます。結果は常に大きい数値から小さい数値を引いたものになります

#include <stdio.h>

int main() {
    
    
	int a, b, res;
	
	scanf("%d%d", &a, &b);
	
	res = a > b ? (a - b) : (b - a);
	
	printf("%d", res);
	
	return 0;
} 

に相当

#include <stdio.h>

int main() {
    
    
	int a, b, res;
	
	scanf("%d%d", &a, &b);
	
	if (a > b) {
    
    
		res = a - b;
	} else {
    
    
		res = b - a;
	}
	
	printf("%d", res);
	
	return 0;
} 

式を直接出力したり、関数として返すこともできます。

直接出力式:

#include <stdio.h>

int main() {
    
    
	int a, b;
	
	scanf("%d%d", &a, &b);
	
	printf("%d", a > b ? a : b);
	
	return 0;
}

関数の戻り値としての式:

#include <stdio.h>

int getMax(int a, int b) {
    
    
	
	return a > b ? a : b;
} 

int main() {
    
    
	int a, b, max;
	
	scanf("%d%d", &a, &b);
	
	max = getMax(a, b);
	
	printf("%d", max);
	
	return 0;
}

コンプリート。

おすすめ

転載: blog.csdn.net/weixin_45711556/article/details/108720782