注意事项

字符串输入

在字符串数组a[n][n]输入时运用如下

for(i=0;i<n;i++)

scanf("%s",a[i]);

此时一定注意i要从0开始,如果从1开始,j显然是从0开始存,会导致存储错误

如使用

for(i=0;i<n;i++)

for(j=0;j<n;j++)

scanf("%c"&a[i][j]);

此时一定注意输入中的空格和回车,容易被%c接收


位运算

& 用于取出一个数的某些二进制位

比如取出二进制的最后一个1(不一定是最后一位,是从右向左数第一个1)可以用:x&(-x)  或 x&(-x+1)   (负数按补码存)

&可以用于计算两数相加的进位


| 用于将一个数某些位设为1


^ 异或 不使用中间变量交换两个数   a=a^b b=b^a a=a^b (仅限整型,加减法可实现多类型  a = a + b;b = a - b;a = a - b;但容易出现精度缺失,也可以用乘除法a=a*b;b=a/b;a=a/b;但也会造成精度缺失并且b不能为0)  还可用于将一个数某些位取反

^可用于计算两数相加的个位数


&与^连用可用于计算两数相加,迭代使用a&b<<1+a^b,直到进位a&b为0


INIT_MAX,INT_MIN

存在于#include<limits.h>中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值