试题题干
设char*s=″abc″;,语句for(;*s!=’\0’;s++) printf (″W″);的输出结果是。
参考答案
试题解析
在for循环语句中*s!=’\0’是字符指针变量的地址不等于‘\0’的时候执行循环体,直到遇到‘\0’结束循环。
进行第一次循环时,*s指向的地址为下标为0的值即a,即输出的结果为W,s++的值为0,运算过后变量s为1;
进行第二次循环时,*s指向的地址为下标为1的值即b,即输出的结果为W,s++的值为1,运算过后变量s为2;
进行第三次循环时,*s指向的地址为下标为2的值即c,即输出的结果为W,s++的值为2,运算过后变量s为3;
进行第四次循环时,*s指向的是下标为4的值即‘\0’,则结束循环,故最后输出的结果为WWW。