3.9 2的k次方小於m的k的最大值
阿新 • • 發佈:2021-01-27
技術標籤:C語言入門碼圖題目
3.9 2的k次方小於m的k的最大值
通過課程進入 題 號: 92 3.9 2的k次方小於m的k的最大值 語言要求: C++
編寫程式,求滿足公式的變數k的最大值:
2^k <= m
其中,m是程式輸入的一個正整數。
2^k表示2的k次方。
輸入輸出格式要求:
輸入格式:m回車
程式中要求全部使用unsigned int 型別資料。scanf和printf中使用%u
只輸出運算結果,請不要輸出其他字元。
例如:
輸入:16回車
輸出:4
輸入:2140000000回車
輸出:30
C程式碼:
#include<stdio.h>
#include<math.h>
int main()
{
unsigned int m;
int k;
double i;
scanf("%u",&m);
i=(double)m;
for(k=1;k<log(i)/log(2.0);k++);
printf("%u",k-1);
return 0;
}
測試結果: