char ch = 'w'; int a = 2, b = 0, c = 0; float x = 3.0; 1. printf("%d", a && b); 2. printf("%d", a || b && c); 3. printf("%d", !a && b); 4. printf("%d", a||3+10&&2); 5. printf("%d", !(x == 2)); 6. printf("%d", !x == 2); 7. printf("%d", ch ||
时间: 2024-03-07 16:51:10 浏览: 169
2023213081-涂乾安-实验2+顺序结构程序设计 (1).docx
1. 输出 0,因为 a && b 中的 && 是逻辑与运算符,只有当两个操作数都非零时才返回真,否则返回假。而 b 的值为 0,所以整个表达式的值为假。
2. 输出 1,因为 a || b && c 中的 || 是逻辑或运算符,只有当两个操作数都为假时才返回假,否则返回真。而 a 的值为非零,所以整个表达式的值为真。
3. 输出 0,因为 !a && b 中的 ! 是逻辑非运算符,将 a 的值取反,得到 0,然后再与 b 进行逻辑与运算。而 b 的值为 0,所以整个表达式的值为假。
4. 输出 1,因为 a || 3+10&&2 中的 || 是逻辑或运算符,只有当两个操作数都为假时才返回假,否则返回真。而 a 的值为非零,所以整个表达式的值为真。
5. 输出 1,因为 !(x == 2) 中的 ! 是逻辑非运算符,将 (x == 2) 的值取反,得到 0,然后再取反一次,得到 1。因为 x 的值不等于 2,所以 (x == 2) 的值为假,取反之后为真。
6. 输出 0,因为 !x == 2 中的 ! 是逻辑非运算符,先将 x 的值取反,得到 0,然后再与 2 进行比较。因为 0 不等于 2,所以整个表达式的值为假。
7. 这个表达式不完整,无法确定其值。
阅读全文