您的位置:

c语言整型清零,c语言把某一位清零

本文目录一览:

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);