本文目录一览:
- 1、c语言清零是怎么回事啊,为什么要清零啊,要系统一点的,谢了
- 2、请问C语言中 给你一个整数int a 请问怎么把第4位清零 a不知道有几位 希望高手解答
- 3、若要通过位运算使整型变量a中的各位数字全部清零该如何做?
- 4、C语言怎么按位清零int a a不知道有几位 要把第5位清零 求高手解答
c语言清零是怎么回事啊,为什么要清零啊,要系统一点的,谢了
变量是需要分配内存的,只是给每个变量划分了区域,但是内存的内容是不确定的
通过清零操作,避免由于内存中的数据对代码逻辑造成影响
比如
int a[10];
与
int a[10]={0};
性质是不同的,前者内存中数据不确定,后者全0
请问C语言中 给你一个整数int a 请问怎么把第4位清零 a不知道有几位 希望高手解答
#include "stdio.h"
void main(){
int x,y,j,a,i=0,t[10];
scanf("%d",a);
x=a;y=a;//计算位数,存储各个数字
for(;a0;i++){
a=a/10;
t[i]=x%10;
x=(x-t[i])/10;
}
printf("%d\n",t[i-4]);//显示清除的数字
for(j=1;ji-3;j++){
t[i-4]=t[i-4]*10;//还原被清除数字的权
}
printf("%d\n",y-t[i-4]);//显示最后的数字
}//多设计个变量,思路就简单了~~~
若要通过位运算使整型变量a中的各位数字全部清零该如何做?
可以通过按位与或者异或完全全部清零:
C语言代码如下:
a = a 0;
a = a ^ a;
以上都可以实现对整型变量a清零。
C语言怎么按位清零int a a不知道有几位 要把第5位清零 求高手解答
提问者,您好! 这个主要是将原来的数字转换为二进制,然后按位与,这样就可以将第五位(从右向左数)清零了,因为“int”类型一般来说占两个字节,即16位(最高位是符号位^_^),所以“int”类型数的范围是-32768到32767(这个可以自己计算哦)。 具体计算过程如下:int a; /*清零前的原始值*/int b; /*第五位(从右向左数,即从低到高,从高到低道理一样)被清零后的值*//*在进行计算前,请将a赋值*/b = (a ^= 32751);