当前位置: 代码迷 >> C语言 >> [求助]来看看简单的题目
  详细解决方案

[求助]来看看简单的题目

热度:34   发布时间:2006-05-18 18:26:00.0
[求助]来看看简单的题目

#include<stdio.h>
main()

{
char *s = "\ta\018bc";

for(;*s!='\0';s++)
printf("*");
}

请问这能打出多少个*,为什么呢? 谢谢


----------------解决方案--------------------------------------------------------
6个

\t a \01 8 b c

----------------解决方案--------------------------------------------------------

如果 \01后面是小于8的话 就是5个*

这么说你明白了吧


----------------解决方案--------------------------------------------------------
#include<stdio.h>
main( )
{
char *s="\ta\018bc";
for(;*s!='\0';s++)
{
printf("%c,",*s); /*用这个语句看看for进行了几次循环不行吗?*/
}
}
是输出了六个星!

----------------解决方案--------------------------------------------------------

发的慢了!

----------------解决方案--------------------------------------------------------
以下是引用SunShining在2006-5-18 18:35:00的发言:

如果 \01后面是小于8的话 就是5个*

这么说你明白了吧

如果小于8, \010~\017表示一个整体为8进制的数. 所以是5个.

\t 表示一个Tab.
a表示一个a
\01表示一个8进制ASCII的001
8表示8
b表示b
c表示c

----------------解决方案--------------------------------------------------------

谢谢大家~~我明白了!~~~


----------------解决方案--------------------------------------------------------
  相关解决方案