一道C语言的选择题
来源:百度知道 编辑:UC知道 时间:2024/05/17 08:02:25
在C语言中,下列代码的输出结果是(a)。(选择一项)
void main()
{
int i = 0 , j = 10;
for(i = 0 ; i < j ; i++ , j--)
{
if (j == 10)
{
printf(“%d , %d\n” , i , j);
j--;
}
j++;
}
printf(“%d , %d” , i , j);
}
a)0,10
9,9
b)0,10
10,10
c)10,10
d)9,11
为什么选择A?
void main()
{
int i = 0 , j = 10;
for(i = 0 ; i < j ; i++ , j--)
{
if (j == 10)
{
printf(“%d , %d\n” , i , j);
j--;
}
j++;
}
printf(“%d , %d” , i , j);
}
a)0,10
9,9
b)0,10
10,10
c)10,10
d)9,11
为什么选择A?
第一次循环时,i=0,j=10,所以进入if,先输出0,10
输出后j--,所以j=9,出了if,j++,所以j又等于10,但是第一次循环后,又有一个j--,所以j=9,之后就再也没机会进if,而每次循环有一个j++和一个j--,所以j一直为9. 但是i是每次加1的,直到i=9,跳出循环,所以最后输出为答案(a)