c语言不用api函数编写简易计算器 无限循环
1、#include<stdio.h>
int main(){
printf("\n*欢迎使用计算器*\n");
jmp();
}
void erjinzhi(int a,int i,int s){int b=0;
if(a<256*256*1024){
for(;b<27;b++){
if(a<<b&256*256*1024){printf("1");}
else{printf("0");}
}
}else {
printf("数据过大,重新输入");
return jmp();}
}
void xiangjia(long a,long b){
printf("\n%d+%d=%d\n",a,b,a+b);}
void xiangjian(long a,long b){printf("\n%d-%d=%d\n",a,b,a-b);}void
xiangcheng(long a,long b){printf
("\n%d*%d=%d\n",a,b,a*b);}
void xiangchu(float a,float b){printf("\n%f÷ %f= %f\n",a,b,a/b);}
char xx(){printf(" 输入错误,请重新输入运算符号!");}
int xxx(){printf("输入2个数计算\n");}
int jmp(){
int a,b,i=1,n=1,s=2;
char c;
printf("\n选择运算符号!\n+ - * \\ 2进制(2) 退出(q)\n");
scanf(" %c",&c);
if(c==50){
printf("输入1个十进制数变2进制\n");
scanf("%d",&a);
printf("\n%d的二进制为:\n",a);
erjinzhi(a,i,s);
return jmp();
}
else{
if(c==43){
xxx();
scanf("%d",&a);
scanf("%d",&b);
xiangjia(a,b);
return jmp();
}
else
if(c==45){
xxx();
scanf("%d",&a);
scanf("%d",&b);
xiangjian(a,b);
return jmp();
}
else
if(c==42){
xxx();
scanf("%d",&a);
scanf("%d",&b);
xiangcheng(a,b);
return jmp();
}
else
if(c==47){
xxx();
scanf("%d",&a);
scanf("%d",&b);
xiangchu(a,b);
return jmp();
}
if(c==113){return 0;}
else
xx();
return jmp();
}
}
2、复制上面代码,新建一个txt文本 粘贴 ,最后改后缀名为 .c 或者.cpp
3、用你的编译器打开即可 运行