下面程序段中,for循环的执行次数是( )。
char *s="\ta\018bc" ;
for(;s!='\0' ;s++) printf("") ;
for循环的条件是:s!='\0' 还是*s!='\0' 。如果是前者的话,是死循环,执行无数次;如果是后者的话,执行6次,因为:
s[0]='\t',
s[1]='a',
s[2]='\x1',
s[3]='8',
s[4]='b',
s[5]='c',
s[6]='\0',
这个字符串\ta\018bc 其中有两个转义字符\t和\01,这样算上字符串结束符\0就有6个, 因此循环次数为6
6次,因为该字符串中总共有6个字符:
'\t', 'a', '\01'(这个字符是用8进制表示的,注意不可能是'108'的,8进制最大的数字是7), '8', 'b', 'c'
如有帮助,还请帮忙点下采纳!感谢!