作者 主題: C語言 switch...case怎麼改if  (閱讀 13074 次)

0 會員 與 1 訪客 正在閱讀本文。

熊哥

  • 可愛的小學生
  • *
  • 文章數: 12
    • 檢視個人資料
C語言 switch...case怎麼改if
« 於: 2006-05-06 13:02 »
利用switch做的簡單計算機...但我想了好久....怎麼想都想不到怎麼用
switch...case改成if......請知道的大哥告訴我怎麼改??....感謝嚕
以下是範例
#include<stdio.h>
#include<conio.h>
int main(void)
{
float a,b;
char op_key;
printf("輸入兩個數字(以空白鍵區隔):");
scanf("%f%f",&a,&b);
printf("請輸入+,-,*,/鑑:");
op_key=getche();
switch(op_key)
{
case'+':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a+b);
break;
case'-':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a-b);
break;
case'*':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a*b);
break;
case'/':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a/b);
break;  
defalt:
printf("運算式有錯\n");
}
getche();
return 0;
}

日京三子

  • 全區板主
  • 俺是博士!
  • *****
  • 文章數: 8830
    • 檢視個人資料
    • http://www.24online.cjb.net
C語言 switch...case怎麼改if
« 回覆 #1 於: 2006-05-06 13:05 »
大少爺、大小姐:


去書局買本講解C語言系列的書吧,裡面有告訴你 IF 指令要怎麼使用 ~.~
哈克不愛的多合一輸入平台----->新香草口味
過去的時間不斷流逝,抹去的眼淚已成追憶;
乾枯的雙手無力阻止,再會了我遠去的曾經。

熊哥

  • 可愛的小學生
  • *
  • 文章數: 12
    • 檢視個人資料
C語言 switch...case怎麼改if
« 回覆 #2 於: 2006-05-06 13:07 »
引述: "日京三子"
大少爺、大小姐:


去書局買本講解C語言系列的書吧,裡面有告訴你 IF 指令要怎麼使用 ~.~
:( 我有買阿...可是它都沒介紹用switch改if耶

Yamaka

  • 俺是博士!
  • *****
  • 文章數: 4913
    • 檢視個人資料
    • http://www.ecmagic.com
C語言 switch...case怎麼改if
« 回覆 #3 於: 2006-05-06 13:34 »
引述: "熊哥"
引述: "日京三子"
大少爺、大小姐:


去書局買本講解C語言系列的書吧,裡面有告訴你 IF 指令要怎麼使用 ~.~
:( 我有買阿...可是它都沒介紹用switch改if耶


先把 switch 跟 if 的機制弄清楚, 你就會改了  8)

熊哥

  • 可愛的小學生
  • *
  • 文章數: 12
    • 檢視個人資料
C語言 switch...case怎麼改if
« 回覆 #4 於: 2006-05-06 13:38 »
引述: "yamaka"
引述: "熊哥"
引述: "日京三子"
大少爺、大小姐:


去書局買本講解C語言系列的書吧,裡面有告訴你 IF 指令要怎麼使用 ~.~
:( 我有買阿...可是它都沒介紹用switch改if耶


先把 switch 跟 if 的機制弄清楚, 你就會改了  8)
:-? 可以提示我改法嗎??

螢火飛

  • 酷!學園 學長們
  • 活潑的大學生
  • ***
  • 文章數: 400
    • 檢視個人資料
    • http://firefly.idv.tw
C語言 switch...case怎麼改if
« 回覆 #5 於: 2006-05-06 14:58 »
這位熊哥兄弟,

依據小弟的直覺與經驗,您不適合學程式設計。

thyme

  • 老人組
  • 俺是博士!
  • *****
  • 文章數: 1281
    • 檢視個人資料
C語言 switch...case怎麼改if
« 回覆 #6 於: 2006-05-08 09:39 »
每個case都用if代替,或是改用 else if 皆可。

oscars80

  • 憂鬱的高中生
  • ***
  • 文章數: 92
    • 檢視個人資料
Re: C語言 switch...case怎麼改if
« 回覆 #7 於: 2006-05-08 15:36 »
引述: "熊哥"
利用switch做的簡單計算機...但我想了好久....怎麼想都想不到怎麼用
switch...case改成if......請知道的大哥告訴我怎麼改??....感謝嚕
以下是範例
#include<stdio.h>
#include<conio.h>
int main(void)
{
float a,b;
char op_key;
printf("輸入兩個數字(以空白鍵區隔):");
scanf("%f%f",&a,&b);
printf("請輸入+,-,*,/鑑:");
op_key=getche();
switch(op_key)
{
case'+':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a+b);
break;
case'-':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a-b);
break;
case'*':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a*b);
break;
case'/':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a/b);
break;  
defalt:
printf("運算式有錯\n");
}
getche();
return 0;
}


很無言=.=

去買本書搞清楚邏輯關係跟作法真的會比較快...

其實我個人比較喜歡用switch case的分類式,
比if elseif的方式好看一些 :p

改法=.=
if(op_key=='+')
{
....
}
elseif(op_key=='-')
{
....
}

就醬=.=

熊哥

  • 可愛的小學生
  • *
  • 文章數: 12
    • 檢視個人資料
Re: C語言 switch...case怎麼改if
« 回覆 #8 於: 2006-05-08 23:21 »
引述: "oscars80"
引述: "熊哥"
利用switch做的簡單計算機...但我想了好久....怎麼想都想不到怎麼用
switch...case改成if......請知道的大哥告訴我怎麼改??....感謝嚕
以下是範例
#include<stdio.h>
#include<conio.h>
int main(void)
{
float a,b;
char op_key;
printf("輸入兩個數字(以空白鍵區隔):");
scanf("%f%f",&a,&b);
printf("請輸入+,-,*,/鑑:");
op_key=getche();
switch(op_key)
{
case'+':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a+b);
break;
case'-':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a-b);
break;
case'*':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a*b);
break;
case'/':
printf("\n%.2f%c%.2f=%.2f\n",a,op_key,b,a/b);
break;  
defalt:
printf("運算式有錯\n");
}
getche();
return 0;
}


很無言=.=

去買本書搞清楚邏輯關係跟作法真的會比較快...

其實我個人比較喜歡用switch case的分類式,
比if elseif的方式好看一些 :p

改法=.=
if(op_key=='+')
{
....
}
elseif(op_key=='-')
{
....
}

就醬=.=
:D 沒辦法阿....這是作業阿....我也覺得switch case比較好懂
不然誰想用if做阿....反正我已經把問題都解決了...感謝大家的指導

螢火飛

  • 酷!學園 學長們
  • 活潑的大學生
  • ***
  • 文章數: 400
    • 檢視個人資料
    • http://firefly.idv.tw
C語言 switch...case怎麼改if
« 回覆 #9 於: 2006-05-09 20:10 »
引用
沒辦法阿....這是作業阿....我也覺得switch case比較好懂
不然誰想用if做阿....反正我已經把問題都解決了...感謝大家的指導

講得倒是理不直氣很壯的...

熊哥

  • 可愛的小學生
  • *
  • 文章數: 12
    • 檢視個人資料
C語言 switch...case怎麼改if
« 回覆 #10 於: 2006-05-09 22:57 »
引述: "螢火飛"
引用
沒辦法阿....這是作業阿....我也覺得switch case比較好懂
不然誰想用if做阿....反正我已經把問題都解決了...感謝大家的指導

講得倒是理不直氣很壯的...
:-? 這位大哥....別這麼說....小弟只是詞窮....不知道要如何表達而已.....