首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

C一个运算程序的有关问题

2012-03-07 
C一个运算程序的问题刚编了个程序如下:#includestdio.hintmain(void){floata,b,ccharchprintf( Pleas

C一个运算程序的问题
刚编了个程序如下:
#include   <stdio.h>

int   main(   void   )
{  
      float     a,   b,   c;
      char   ch;
     
      printf( "Please   input   a:   ");
      scanf( "%f ",   &a);
      printf( "\nPlease   input   b:   ");
      scanf( "%f ",   &b);
      printf( "\nPlease   input   ch:   ");
      ch   =   getch();
     
      switch(   ch   )
      {
            case     '+ ':
                            c   =   a   +   b;
                            break;
            case     '- '   :
                            c   =   a   -   b;  
                            break;
            case     '* ':  
                          c   =   a   *   b;
                            break;
            case     '/ ':    
                            c   =   a   /   b;  
                break;
            default   :
                            ch   =   'e ';
      }

      if(ch   !=   'e ')
          printf( "\n%f   %c   %f   =   %f\n ",   a,   ch,   b,   c);
      else
          printf( "\nInput   Error\n ");
}

为啥打印的时候没显示那个运算符号?请指教一下,顺便问一下如何利用循环把得到的结果再与b相运算?

[解决办法]
#include <stdio.h>
int main(void)
{
float a, b, c=0;
char ch;

printf( "Please input a: ");
scanf( "%f ", &a);
getchar();/////////////吸收掉缓冲区里的回车
printf( "\nPlease input b: ");
scanf( "%f ", &b);
getchar();////////////同上
printf( "\nPlease input ch: ");
ch=getchar();

switch (ch)
{
case '+ ':
c = a + b;
break;
case '- ':
c = a - b;
break;
case '* ':
c = a * b;
break;
case '/ ':
c = a / b;
break;
default:
ch = 'e ';


}

if (ch != 'e ')
printf( "\n%f %c %f = %f\n ", a, ch, b, c);
else
printf( "\nInput Error\n ");
return 0;
}

热点排行