题目描述
对以下表达式进行求值,a、b、c是三个变量,它们都是小于100的自然数
a+b>c && b==c
输入
第一行输入T,表示后续有T个测试示例
第二行开始,每行输入3个变量值,输入T行
输出
每行输出计算结果
输入输出样例
输入样例1 <-复制
3
5 6 7
4 5 5
6 1 9
输出样例1
0
1
0
思路分析
a+b>c && b==c是一个表达式,要明白这个表达式,你需要知道&&和==号相关知识。
首先看a+b>c这个表达式,如果a+b>c的话那么表达式为真,其值为1;若a+b<c则表达式为假,其值为0。
b==c这个表达式,若b和c的值相等则表达式为真,其值为1;若b和c的值不等,则表达式为假,其值为0。
再看&&,简要说明就是全真才真,否则为假。那么它左右两边的表达式的值都要为1,其相与后表达式才为1,否则为0。
现在再看就很明了了,若a+b>c并且b等于c,则整体表达式的值为1,否则为0。
AC代码
#include<stdio.h> //c语言必备头文件
int main() {
int t; //定义变量存储测试次数
scanf("%d", &t); //读入数据
for (int i = 0; i < t; i++) { //for循环进行t次循环
int a, b, c; //定义变量a,b,c
scanf("%d%d%d", &a, &b, &c); //读入数据并赋值给a,,b,c
int final = a + b > c && b == c; //计算表达式的值并复制给变量final
printf("%d\n", final); //输出final的值并换行,\n是换行符
}
}
(by 归忆)