C语言 实现二进制
#include <stdio.h>
#include <math.h>
int main(){
int flagsum=1,nvar=3,nRow=0,j=0,i=0;
char charVal[120];
nRow=1;//有2^n个情况
for(i=0;i<nvar;i++){
charVal[i]='0';nRow=nRow*2;
}
charVal[i]='\0';
for(i=0;i<nRow;i++){
for(j=0;j<nvar;j++){
printf("%4c",charVal[j]);//每种赋值情况输出
}
flagsum=1;
for(j=nvar-1;j>=0;j--)
{
if(charVal[j]=='1'){
if(flagsum==1){//1+1=10//进位
charVal[j]='0';flagsum=1;
}else{break;}//1+0=1 不变
}else if(charVal[j]=='0'){
if(flagsum==1){ //0+1=1 //没有进位
charVal[j]='1'; flagsum=0;
}else{break;}// 0+0
}
}
}
return 0;
}
小新正在学习中,希望交流可以加Q:1765900518