c语言中 (n & 1)什么意思啊

#include<stdio.h>voidTtoB(intn){if(n){TtoB(n>>1);printf("%d",n&1);//n&1什么意思啊?}}intmai... #include <stdio.h>

void TtoB(int n)
{
if (n)
{
TtoB(n >> 1);
printf("%d", n & 1);//n&1什么意思啊?
}
}

int main(void)
{
int n;
while (scanf("%d", &n) != EOF)
{
TtoB(n);
putchar('\n');
}

return 0;
}
展开
 我来答
吉祥二进制
高粉答主

2015-05-24 · 科技改变生活,生活改变科技。
吉祥二进制
采纳数:33926 获赞数:84564

向TA提问 私信TA
展开全部

这应该是一段控制输出信息的字符控制信息。 使用%1f不明显,直接看示例。

#include<stdio.h>
 
int main()
{
float f= 1.1f;
printf("f=%f\n", f);
printf("f=%10f\n", f);
return 0;
}

程序执行效果:

说明:%1f或者%10f,里面的数字指的是最小域宽限定符,简单的说即数值输出后要有多少个字符。 %1f保证输出的数至少有1个字符位 ,%10f表示输出的数至少是10位,如果不够10个字符,默认填充的是空格,程序员可以自己设置用什么填充。比如下面的代码当输出的字符不够10个时用0进行填充:

#include<stdio.h>
 
int main()
{
float f= 1.1f;
printf("f=%f\n", f);
printf("f=%010f\n", f);
return 0;
}

syptt100
推荐于2017-11-23 · TA获得超过125个赞
知道答主
回答量:82
采纳率:0%
帮助的人:58.5万
展开全部
是相与的意思。算术"与"操作。“&&”这是逻辑“与”操作。基本操作有
0&1=0;
1&1=1;
0&0=0;
这一题中无论n的值是多少。只要它二进制的最后一位是0。结果就是0;如果是其最后一位是1结果就是1。
回答楼主这样的题目,挺没劲的。。别事事问知道,您不能多看看书啊??这样学的更快啊。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
梦醒OvO
推荐于2018-02-28 · TA获得超过918个赞
知道小有建树答主
回答量:452
采纳率:100%
帮助的人:206万
展开全部
首先,a&b表示,a和b在计算机中存储的对应二进制码按位取与:
例如:
a的二进制码为:0111,b的二进制码为:0011时:
0111
& 0011
= 0011
对应十进制形式为:7&3=3;
同理:因为1的对应存储的二进制码除了最低位,其他位都是0,所以,n&1要么为1(n为奇数时,n的最低位为1),要么为0(n为偶数时,n的最低位为0)。
综上可得:n&1等效于 n%2==1
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
isip_ty
2010-12-22 · TA获得超过435个赞
知道小有建树答主
回答量:212
采纳率:0%
帮助的人:281万
展开全部
这个是让n和1做位与运算,假设你的n是0x0002,二进制就是0000000000000010,那么1是0x0001,二进制就是0000000000000001,两个做位运算后就是0,每个位和每个位要做位与运算
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xuzhouliuying
高粉答主

2017-10-01 · 繁杂信息太多,你要学会辨别
知道顶级答主
回答量:5.4万
采纳率:86%
帮助的人:2.4亿
展开全部
这个是问号运算符。问号运算符是三目运算符,格式:
表达式1?表达式2:表达式3;
如果表达式1成立,则执行表达式2,否则执行表达式3
对于本题,(n)?(c++):(c--);的意思是如果n不等于0,那么执行c++,就是c自增1,如果n等于0,那么执行c--,就是c自减1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式