习题 4.3 写出下面各逻辑表达式的值。设a=3,b=4,c=5。
来源:互联网 发布:web性能测试软件 编辑:程序博客网 时间:2024/06/06 04:35
C程序设计(第四版) 谭浩强 习题4.3 个人设计
习题 4.3 写出下面各逻辑表达式的值。设a=3,b=4,c=5。
(1) a + b > c && b == c
(2) a || b + c && b - c
(3) !(a >b) && !c || 1
(4) !(x = a) && (y = b) && 0
(5) !(a + b) + c - 1 && b + c/2
代码块:
方法1:(利用数组分别计算)
#include <stdio.h>int main(){ int a = 3, b = 4, c = 5; int v[5], i, x, y; v[0] = a+b>c && b == c; v[1] = a||b+c && b-c; v[2] = !(a>b) && !c||1; v[3] = !(x=a) && (y=b) && 0; v[4] = !(a+b)+c-1 && b+c/2; for (i = 0; i < 5; i++) printf("v%d value is %d\n", i+1, v[i]); return 0;}
方法2:(利用switch选择结构)
#include <stdio.h>int main(){ int a = 3, b = 4, c = 5, n, x, y, v; printf("Please enter number:"); scanf("%d", &n); switch(n){ case 1: v = a+b>c && b == c; break; case 2: v = a||b+c && b-c; break; case 3: v = !(a>b) && !c||1; break; case 4: v = !(x=a) && (y=b) && 0; break; case 5: v = !(a+b)+c-1 && b+c/2; break; default: printf("Error!\n"); break; } if (v >=1 && v <=5) printf("v%d value is %d\n", n, v); return 0;}
方法3:(利用函数的模块化设计)
#include <stdio.h>void value(int x); //定义公式值判断函数int a = 3, b = 4, c = 5, x, y; //定义全局变量int main(){ int n; printf("Please enter number:"); scanf("%d", &n); value(n); return 0;}//公式值判断函数void value(int x){ int v; switch(x){ case 1: v = a+b>c && b == c; break; case 2: v = a||b+c && b-c; break; case 3: v = !(a>b) && !c||1; break; case 4: v = !(x=a) && (y=b) && 0; break; case 5: v = !(a+b)+c-1 && b+c/2; break; default: printf("Error!\n"); break; } if (x >=1 && x <=5) printf("v%d value is %d\n", x, v);}
阅读全文
0 0
- 习题 4.3 写出下面各逻辑表达式的值。设a=3,b=4,c=5。
- exercise. 写出下面各表达式的值
- 习题(3-3) 计算(a+b)*c的值
- 逗号表达式 c = a,b; d = (a,b);
- Java表达式y=a<b?c:d>a?b:c的运算解释
- a= b?c:d 问号表达式
- 逗号表达式 result = (a+4,b+3,a+b) ...result = a+b;
- 设a和b是两个正整数,a<=b,计算a和b之间约数个数最多的整数
- 逻辑操作:c=(a>b)?a:b;等同于下式 if(a>b) c=a; else c=b;
- 2} 求从m到n的映射的个数 0 c} n{-2 b 设m={a
- 编译原理课后习题答案令A,B和C是任意正规式,证明以下关系成立(A|B)*=(A*B*)*=(A*|B*)*
- c = ( (++a) + (b++) );
- A=B+C
- 当a=1,b=2,c=3时,if(a>c)b=a;a=c;c=b;的执行结果详解
- a^=b^(b^=a^b)——连续赋值表达式的陷阱
- 有以下宏定义, #define MIN(A,B) ((A) <= (B) ? (A) : (B)) 请写出一种不能正确返回的情况?
- 数据类型不一致时,a=b=c表达式引起的bug
- 交换a、b的值temp = a; a = b; b = temp;比a = a^b;b = a^b;a = a^b;快
- 消除button或inline-block元素之间的空白间距
- iPhone屏幕相关
- [view release]: message sent to deallocated instance 0xe250df0
- HTML 5 的data-* 自定义属性
- 如何使用异步提交
- 习题 4.3 写出下面各逻辑表达式的值。设a=3,b=4,c=5。
- 使用maven profile实现多环境可移植构建
- CS、DS、SS、ES
- 单例设计模式-懒汉式和饿汉式
- Makefile常用函数总结
- final
- 装饰模式
- MySql_创建用户并赋予权限
- TimeOut Expired 数据链接超过最大链接数