楼主你好!printf()函数返回值为整型。若成功则返回输出的字符数,输出出错则返回负值。这里题目返回整数1。由于'0'的ASCII码为48,属于非0!while()函数括号里的非0相当于TRUE,0相当于FALSE。所以只要是括号里为非零,都是TRUE!
答案是B
printf()函数的返回值为所输出的字符的个数(此处为1);
而字符‘0’的ASCLL 码非 0 ,即相当与1。所以等价。
#include
int main(void){
int pt=printf("x");
while(pt==1){
pt=0;
printf("\nprintf 返回值是1\n");
}
return 0;
}
//返回1表示printf("x");执行了。