回复 10楼 林月儿
改了那,没看出来回复 11楼 hjx1120
case 'c':divide();
改成case 'c':
multiply();
加
while(!divide2){
printf("被除数不能为0请重新输入:");
scanf("%lf",÷2);
}
解决BUG_2
额,你就不能认为我是复制你的吗?其实不想发的,还有电影没看完呢。
#include<stdio.h> #include<ctype.h> char get_choice(void); char get_first(void); int get_int(void); void pluse(void); void minus(void); void multiply(void); void divide(void); int main(void) { int choice; while((choice=get_choice()) != 'q' ) { switch(choice) { case 'a': pluse(); break; case 'b': minus(); break; case 'c': divide(); break; case 'd': divide(); } } } char get_choice(void) { char ch; printf("*****************************\n"); printf("a. 加法 b. 减法\n"); printf("c. 乘法 d. 除法\n"); printf("q. 退出\n"); printf("*****************************\n"); ch=get_first(); while((ch<'a' || ch>'d')&& ch != 'q') { printf("请输入a,b,c,d or q\n"); ch=get_first(); } return ch; } char get_first(void) { char ch; while(isspace(ch=getchar())); while(getchar() != '\n'); return ch; } void pluse(void) { double plusen; double pluse1; double pluse2; printf("请输入第一个数:\n"); scanf("%lf",&pluse1); printf("请输入第二个数:\n"); scanf("%lf",&pluse2); plusen=pluse1+pluse2; printf("\n%g+%g=%g\n",pluse1,pluse2,plusen); system("pause"); system("CLS"); } void minus(void) { double minusn; double minus1; double minus2; printf("请输入第一个数:\n"); scanf("%lf",&minus1); printf("请输入第二个数:\n"); scanf("%lf",&minus2); minusn=minus1-minus2; printf("\n%g-%g=%g\n",minus1,minus2,minusn); system("pause"); system("CLS"); } void multiply(void) { double multiplyn; double multiply1; double multiply2; printf("请输入第一个数:\n"); scanf("%lf",&multiply1); printf("请输入第二个数:\n"); scanf("%lf",&multiply2); multiplyn=multiply1*multiply2; printf("\n%g*%g=%g\n",multiply1,multiply2,multiplyn); system("pause"); system("CLS"); } void divide(void) { double dividen; double divide1; double divide2; printf("请输入第一个数:\n"); scanf("%lf",÷1); printf("请输入第二个数:\n"); scanf("%lf",÷2); while(!divide2) { printf("被除数不能为0请重新输入:\n"); scanf("%lf",÷2); } dividen=divide1/divide2; printf("\n%g/%g=%g",divide1,divide2,dividen); system("pause"); system("CLS"); }
#include<stdio.h> #include<ctype.h> #include<stdlib.h> char get_choice(void); char get_first(void); int get_int(void); void pluse(void); void minus(void); void multiply(void); void divide(void); int main(void){ int choice; while((choice=get_choice()) != 'q' ){ switch(choice){ case 'a': pluse(); break; case 'b': minus(); break; case 'c': multiply(); //依旧不改 break; case 'd': divide(); } } } char get_choice(void) { char ch; printf("*****************************\n"); printf("a. 加法 b. 减法\n"); printf("c. 乘法 d. 除法\n"); printf("q. 退出\n"); printf("*****************************\n"); ch=get_first(); while((ch<'a' || ch>'d')&& ch != 'q'){ printf("请输入a,b,c,d or q\n"); ch=get_first(); } return ch; } char get_first(void){ char ch; while(isspace(ch=getchar())); while(getchar() != '\n'); return ch; } void pluse(void){ double plusen; double pluse1; double pluse2; printf("请输入第一个数:\n"); scanf("%lf",&pluse1); printf("请输入第二个数:\n"); scanf("%lf",&pluse2); plusen=pluse1+pluse2; printf("\n%g+%g=%g\n",pluse1,pluse2,plusen); system("pause"); system("CLS"); } void minus(void){ double minusn; double minus1; double minus2; printf("请输入第一个数:\n"); scanf("%lf",&minus1); printf("请输入第二个数:\n"); scanf("%lf",&minus2); minusn=minus1-minus2; printf("\n%g-%g=%g\n",minus1,minus2,minusn); system("pause"); system("CLS"); } void multiply(void){ double multiplyn; double multiply1; double multiply2; printf("请输入第一个数:\n"); scanf("%lf",&multiply1); printf("请输入第二个数:\n"); scanf("%lf",&multiply2); multiplyn=multiply1*multiply2; printf("\n%g*%g=%g\n",multiply1,multiply2,multiplyn); system("pause"); system("CLS"); } void divide(void){ double dividen; double divide1; double divide2; printf("请输入第一个数:\n"); scanf("%lf",÷1); printf("请输入第二个数:\n"); scanf("%lf",÷2); while(!divide2){ printf("被除数不能为0请重新输入:\n"); scanf("%lf",÷2); } dividen=divide1/divide2; printf("\n%g/%g=%g",divide1,divide2,dividen); system("pause"); system("CLS"); }
#include <stdio.h> #include <stdlib.h> #include <ctype.h> void pluse(void); void minus(void); void multiply(void); void divide(void); char get_choice(void); char get_first(void); int main() { int choice; // void pluse(void); //定义两遍的问题不知道几楼已经说过,听了吗? // void minus(void); // void multiply(void); // void divide(void); while((choice=get_choice())!='q') { switch(choice) { case 'a':pluse(); break; case 'b':minus(); break; case 'c':multiply(); break; case 'd':divide(); break; default:printf("擦亮你的眼,只有a,b,c,d选项,按q退出"); break; } } printf("欢迎使用凛冬计算器\n"); printf("如果好就推荐给别人"); system("pause"); return 0; } char get_choice() //这种拼写问题,就不说了 { char ch; //依旧不改 printf("请输入您要进行的运算"); printf("a加法 b减法"); printf("c乘法 d除法"); printf("q退出"); ch=get_first(); while((ch<'a'||ch>'d')&&ch!='q') { printf("擦亮你的眼睛,只有a,b,c,d选项,按q退出"); ch=get_first(); //get_first(void)返回类型是int型? } return ch; } char get_first(void) { char ch; //依旧不改 ch=getchar(); while(getchar()!='\n') continue; return ch; } void pluse(void) { float plusen; float pluse1; float pluse2; printf("请输入第一个数"); scanf("%f",&pluse1); printf("请输入第二个数"); scanf("%f",&pluse2); plusen=pluse1+pluse2; printf("%f+%f=%f",pluse1,pluse2,plusen); } void minus(void) { float minusn; float minus1; float minus2; printf("请输入第一个数"); scanf("%f",&minus1); printf("请输入第一个数"); scanf("%f",&minus2); minusn=minus1-minus2; printf("%f-%f=%f",minus1,minus2,minusn); } void multiply(void) { float multiplyn; float multiply1; float multiply2; printf("请输入第一个数"); scanf("%f",&multiply1); printf("请输入第一个数"); scanf("%f",&multiply2); multiplyn=multiply1*multiply2; //依旧不改 printf("%fX%f=%f",multiply1,multiply2,multiplyn); } void divide(void) //依旧不改 { float dividen; float divide1; float divide2; printf("请输入第一个数"); scanf("%f",÷1); printf("请输入第一个数"); scanf("%f",÷2); while(!divide2) { printf("你的数学老师要哭了,你尽然让分母为0"); scanf("%f",÷2); } dividen=divide1/divide2; printf("%f/%f=%f",divide1,divide2,dividen); }