亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

編寫程序一個正整數x在二進制下的位數

編寫程序一個正整數x在二進制下的位數

C
我是好學生666 2017-03-15 20:41:51
#include<stdio.h>int main(){ int x; scanf("%d\n",&x); int a=0;while(x%2!=0) { x=x%2; a=a+1; ? }printf("一個正整數x在二進制下的位數:%d\n",a);return 0; ?}各位大神,能不能告訴我這個程序錯在哪里
查看完整描述

1 回答

?
MinRam

TA貢獻87條經驗 獲得超24個贊

循環體錯了。(循環判斷和里面的算法都錯了)

int?x?=?4?//?假設讓x?=?4?,則x的二進制為?100b

while(x%2!=0)???//?顯然進入不了循環
{
x=x%2;??????????//?x經過這次運算??4->0???顯然未達到縮減一位二進制位的目的
a=a+1;??
}

自己嘗試改下。如果還是不懂請追問。

查看完整回答
反對 回復 2017-03-15
  • 1 回答
  • 0 關注
  • 1817 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號