首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

ASCII码的有关问题

2012-03-07 
ASCII码的问题#includestdio.hmain(){inti,rchars1[80] bus chars2[80] book for(ir0s1[i]!

ASCII码的问题
#include   <stdio.h>
main()
{   int   i,r;
    char   s1[80]= "bus ";
    char   s2[80]= "book ";
    for(i=r=0;s1[i]!= '\0 '&&s2[i]!= '\0 ';i++)
          if(s1[i]==s2[i])   i++;
          else   {r=s1[i]-s2[i];break;}
    printf( "%d ",r);
}

这道题为什么输出为4? 'u '与 'o '之间不是差6吗?

[解决办法]
你的代码是计算 s 和o的差值。
[解决办法]
每一次循环当s1[i]==s2[i]时,i加了2
[解决办法]
if(s1[i]==s2[i]) continue;
[解决办法]
i加了2次。直接跳到s 和 o的比较了。

热点排行