switch判断字符的用法

%g用来输出实数,它根据数值的大小,自动选f格式或e格式(选择输出时占宽度较小的一种),且不输出无意义的0。
switch想要判断:-,+,*,/ 这四中符号就要用到ASCII码表,通常由8个二进制位(一个字节)来表示一个字符。所以switch判断的实际是一个字节。

#include 
main()
{
  double x,y,s;
  char c;
  printf("本计算器只能进行加减乘除运算(且保留两位小数)\n");
  scanf("%lf%c%lf",&x,&c,&y);
  printf("%g%c%g=",x,c,y);
  switch (c)
  {
      case'-':	 
             printf("%.2f\n\n",x-y);
	  break;
      
	  case'+':
	 
             printf("%.2f\n\n",x+y);
	  break;
	 
	  case'*':
		    
             printf("%.2f\n\n",x*y);
	  break;
	  
	  case'/':
		     
             printf("%.2f\n\n",x/y);
	  break;
	  default:printf("error\n");break;
  }
}


switch不能判断区间数,所以要用中间量传递,设 int x;先用 if 进行判断,然后给x赋值,再把x传递给switch(x),进行判断。

你可能感兴趣的:(笔记,c语言,switch)