以下程序运行结果是()
#include <stdio.h> int main() { int n=5; if (n++==6) printf( "% d\n" , n); else printf ( "%d\n" , ++n ); }
A、4 B、5 C、6 D、7
#include <stdio.h> int main()
{
int n = 5;
if (n++ == 6) // 这里n++先返回n的当前值(5)给if判断,然后n的值增加1变为6
printf("%d\n", n); // 因为if的条件(n++ == 6)为假,所以这条语句不会执行
else
printf("%d\n", ++n); // 在这里,++n先将n的值增加1(从6变为7),然后返回新的值7给printf
return 0;
}
题目有错吧? 6能赋值给表达式????????
admin 回复 XM01: 已修正
if ( n++=6 ) 现将n与6比 在+1 此时n为5不等于6 ,+1等于6后进入else 输出++n即为7
习作飞羽 回复 icecoolr1: 看清楚,就一个等号,是赋值语句,两个等号才是比较,这题进入的是if后面的语句
忽大忽小 回复 习作飞羽: 所以应该选择C吧
这是错的吧
admin 回复 yzyadmin: 已修正
D
用户登录可进行刷题及查看答案
登录后提交答案