一个简单的C语言小程序就可以满足要求,需要用到switch-case语句,先上代码:
#include <stdioh>int main()
{
double a, b, answer;
/两个数a、b及其计算结果answer,由于下面会有除法,可能使answer出现小数,所以定义double类型变量/
char op; //运算符op
scanf("%lf%c%lf",&a,&op,&b);
switch(op)
{
case '+': //加法
answer = a + b;
break;
case '-': //减法
answer = a - b;
break;
case '': //乘法
answer = a b;
break;
case '/': //除法
answer = a / b;
break;
default:
printf(" *** 作符只接收加减乘除!\n"); //运算符只接收加减乘除
break;
}
printf("%lf\n",answer);
return 0;
}
需要注意的地方只有除法的结果可能是小数,所以a,b和answer都需要定义成double类型变量。
下面附上switch-case语句的使用方法:
switch (表达式){
case 值1 : 语句1 break;
case 值2 : 语句2 break;
default : 语句n break;
}
从表达式值等于某个case语句后的值开始,它下方的所有语句都会一直运行,直到遇到一个break为止。假如任何一个case语句的值都不等于表达式的值,就运行可选标签default之下的语句。
参考资料:
CASE是实现选择结构程序设计的一种语句。case语句和if类似,也是用来判断,只不过当判断条件较多时,使用case语句会比if更加方便。
switch语句允许根据值列表测试变量是否相等。每个值被称为一个case,并针对每个case检查正在打开的变量。case的值必须与开关中的变量具有相同的数据类型,并且必须是常量或文字。
注意事项
switch语句中使用的变量只能是整数,可转换整数(字节,短整数,字符),字符串和枚举。开关内可以有任意数量的case语句。每个案例后面都跟要比较的值和一个冒号。
当打开的变量等于大小写时,该大小写之后的语句将执行,直到到达break语句为止。当到达break语句时,开关终止,控制流跳至switch语句后的下一行。并非每个case都需要休息一下。如果没有出现中断,则控制流将进入随后的情况,直到达到中断为止。
输出是0,1,2,5。分析如下。
case后面的语句后都没有break;,所以从case 0:起一直顺序执行到所有case后面的语句。
i=m++;就是i=m,m=m+1;所以case 0:后的语句执行完后i=0(因为m初值是0),m==1。后面同样的分析j=1,m=2;k=2,m=3;最后m++;使m==4。然后执行for中的m++表达式使m==5;返回for后m<4已经不成立了,退出。
所以最后的输出是0,1,2,5。
若回答正确且帮助了你,请采纳。
以上就是关于c语言程序设计:输入两个数和一个运算符,计算其结果。全部的内容,包括:c语言程序设计:输入两个数和一个运算符,计算其结果。、case语句后没有break,顺序向下执行、C语言程序设计,过程,求解等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)