细节题
发表于|更新于|复习
|字数总计:364|阅读时长:1分钟|阅读量:
一.编程题
1.求!打印的次数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 #include <stdio.h>
#include <stdlib.h>
int main()
{
int k;
int i;
for(i = 0,k = 0;k = 0;k++,i++)
{
k++;
printf("!");
}
system("pause");
return 0;
}答案:打印0次,因为for循环中的表达式二为k=0结果为假,执行完表达式一后,执行表达式二,表达式二结果为假,故不进入for循环体中
1.2.求!打印的次数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 #include <stdio.h>
#include <stdlib.h>
int main()
{
int k;
int i;
for(i = 0,k = 0;i==0, k >= 0,;k++,i++)
{
k++;
printf("!");
}
system("pause");
return 0;
}答案:死循环打印,for循环中的表达式二为逗号表达式,表达式的逻辑结果(真假结果)取决于最后一个逗号后的值,因为k>=0的值为真,所以i==0,k>=0整个表达式的值为真,相当于i==0被悬空了
二.选择题
1.若给定条件表达式 (M)?(a++):(a–) ,则其中表达式 M ( )
A: 和(M==0)等价 B: 和(M==1)等价 C: 和(M!=0)等价 D: 和(M!=1)等价
1 答案:C,假设表达式M的逻辑结果为真(非0的值),则(M!=0)整体的逻辑结果也为真;假设表达式M的逻辑结果为假(值为0),则(M!=0)整体的逻辑结果的值也为假,故选C
文章作者: Ho kin
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Ho kin Blog!
评论
ValineDisqus