|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 求解这条题的思路
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
1023
人关注过本帖
标题:
求解这条题的思路
只看楼主
加入收藏
dzkdfjy
等 级:
新手上路
帖 子:1
专家分:0
注 册:2017-10-3
结帖率:
0
楼主
收藏
已结贴
√
问题点数:20 回复次数:2
求解这条题的思路
编写程序,求满足公式的变量k的最大值:
2^k <= m
其中,m是程序输入的一个正整数。
2^k表示2的k次方。
输入输出格式要求:
输入格式:m回车
程序中要求全部使用unsigned int 类型数据。scanf和printf中使用%u
只输出运算结果,请不要输出其他字符。
例如:
输入:16回车
输出:4
输入:2140000000回车
输出:30
搜索更多相关主题的帖子:
思路
输入
输出
格式
回车
2017-10-03 22:30
举报帖子
使用道具
赠送鲜花
静水且流深
等 级:
贵宾
威 望:
11
帖 子:60
专家分:319
注 册:2017-7-7
第
2
楼
收藏
得分:10
程序代码:
i=
2140000000
; j=
1
,k=
0
;
for
(;j<=i;j*=
2
,k++); 打印k-
1
不过是爱情,又能走多久
2017-10-03 23:23
举报帖子
使用道具
赠送鲜花
吹水佬
等 级:
版主
威 望:
451
帖 子:10608
专家分:43190
注 册:2014-5-20
第
3
楼
收藏
得分:10
图片附件: 游客没有浏览图片的权限,请
登录
或
注册
#include <stdio.h>
#include <limits.h>
#define K
sizeof(unsigned int)*CHAR_BIT
main()
{
unsigned int
m, k;
scanf("%u", &m);
if (m<1 || m>(1<<(K-1)))
return;
for (k=0; (1<<k)<m; ++k) NULL;
if ((1<<k) != m) --k;
printf("%u\n", k);
}
2017-10-04 07:34
举报帖子
使用道具
赠送鲜花
3
1/1页
1
快速回复:
求解这条题的思路
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.020103 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved