A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 墨子 中级黑马   /  2014-4-30 14:34  /  1138 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int main(void)
        {
                Unsigned char index = 0;
                While(index < 256)
                {
                        index +=index;
                        index++;
                }
                        Printf(“index value %d\n”,index);
                        Return 0;
        }
请帮忙指出哪里有问题,并且说明下原因

评分

参与人数 1技术分 +1 收起 理由
脸皮猴 + 1

查看全部评分

3 个回复

倒序浏览
本帖最后由 兰闻天 于 2014-4-30 14:52 编辑

int main(void)
        {
                Unsigned int index = 0;
                int x = 0;
                While(index < 256)
                {
                        x +=index;//这里应该定义一个新的变量,如果是用index +=index;例如index=1,这里的值就是2;到下面的index++,index的值就变成3,然后在进行循环,不能循环256次。
                        index++;
                }
                        //Printf(“index value %d\n”,index);
                        Printf(“index value %d\n”,x);
                        Return 0;
        }
你的意思应该是这个吧,你发了两遍

评分

参与人数 1技术分 +1 收起 理由
脸皮猴 + 1

查看全部评分

回复 使用道具 举报

  1. int main(void)
  2. {
  3.     unsigned int index = 0; // unsigned char类型的范围是0~255,后面的while循环无法跳出,改成unsigned int解决
  4.     while(index < 256)
  5.     {
  6.         index +=index;
  7.         index++;
  8.     }
  9.     printf("index value %d\n", index);
  10.     return 0;
  11. }
复制代码
回复 使用道具 举报
你有哪个地方不懂呢?????
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马