① c語言用switch編寫一個簡單的四則運算程序
代碼如下:
#include <stdio.h>
int main()
{
float fFloat1=.0,fFloat2=.0;
char cOP=NULL;
printf("請輸入要進行四則運算表達式: ");
scanf("%f%c%f",&fFloat1,&cOP,&fFloat2);
switch(cOP)
{
case '+':
printf("%f+%f=%f ",fFloat1,fFloat2,fFloat1+fFloat2);
break;
case '-':
printf("%f-%f=%f ",fFloat1,fFloat2,fFloat1-fFloat2);
break;
case '*':
printf("%f*%f=%f ",fFloat1,fFloat2,fFloat1*fFloat2);
break;
case '/':
if(0!=fFloat2)
{
printf("%f/%f=%f ",fFloat1,fFloat2,fFloat1/fFloat2);
}
else
{
printf("error! ");
}
break;
default:
printf("error! ");
break;
}
return 0;
}
(1)c語言簡單四則運算表達式擴展閱讀
switch語句和if語句的區別:
1、大於等於(>=)、小於等於(<=)的判斷用if語句,而等於(=)的判斷用switch語句。
2、switch語句中的case類似於if…else…else if…else,但是離散值的判斷。(離散值的判斷自認為是等於情況的判斷)。
3、switch一般都可以及用if重寫,但是if不一定能用switch重寫。
4、不要忘了break.C#中break不寫是不行的,除了合並case的情況。
5、case中的值必須是常量,不能是變數、表達式。
② C語言簡單四則混合運算代碼
四則混合運算代碼:
#include<stdio.h>
#include<ctype.h>
#include<stdlib.h>
char token[61]; /*存放表達式字元串的數組*/
int n=0;
void error(void) /*報告錯誤函數*/
{
printf("ERROR!\n");
exit(1);
}
void match(char expected) /*檢查字元匹配的函數*/
{
if(token[n]==expected)
token[++n]=getchar();
else error();
}
double term(void); /*計算乘除的函數*/
double factor(void); /*處理括弧和數字的函數*/
double exp(void) /*計算加減的函數*/
{
double temp=term();
while((token[n]=='+')||(token[n]=='-'))
switch(token[n])
{
case'+':match('+');
temp+=term();
break;
case'-':match('-');
temp-=term();
break;
}
return temp;
}
double term(void)
{
double div;
double temp=factor();
while((token[n]=='*')||(token[n]=='/'))
switch(token[n])
{
case'*':match('*');
temp*=factor();
break;
case'/':match('/');
div=factor();
if(div==0) /*處理除數為零的情況*/
{
printf("The divisor is zero!\n");
exit(1);
}
temp/=div;
break;
}
return temp;
}
double factor(void)
{
double temp;
char number[61];
int i=0;
if(token[n]=='(')
{
match('(');
temp=exp();
match(')');
}
else if(isdigit(token[n])||token[n]=='.')
{
while(isdigit(token[n])||token[n]=='.') /*將字元串轉換為浮點數*/
{
number[i++]=token[n++];
token[n]=getchar();
}
number[i]='\0';
temp=atof(number);
}
else error();
return temp;
}
main()
{
double result;
FILE *data=fopen("61590_4.dat","at");
if(data==NULL)
data=fopen("61590_4.dat","wt");
if(data==NULL)
return 0;
token[n]=getchar();
result=exp();
if(token[n]=='\n')
{
token[n]='\0';
printf("%s=%g\n",token,result);
fprintf(data,"%s=%g\n",token,result);
}
else error();
fclose(data);
return 0;
getch();
}
③ c語言四則運算
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int n,n1;
char fun(int op){if(op==0)return '+';else if(op==1)return '*';else if(op==2)return '-';else return '/';}
int Compute( int a, int b, int op )
{
int p;
if(op==0)p=a+b;else if(op==1)p=a*b;else if(op==2)p=a-b;else p=a/b;
if(n==p){n1++;
return 1;}
else
return 0;
}
void Print(int flag)
{
if(flag==1)printf("Right!\n");
else
printf("Not correct!\n");
}
void main()
{
srand((unsigned)time(NULL));
int a,b,op,i=0,num;
while(true)
{
if(i==10)break;
a=rand()%10+1;
b=rand()%10+1;
op=rand()%4;
if(a%b==0&&a>=b)
{
i++;
printf("%d%c%d=",a,fun(op),b);
scanf("%d",&n);
num=Compute(a,b,op);
Print(num);
}
}
printf("you grade is:%d,you falsed %d!\n",n1*10,10-n1);
}
④ 設計一個C語言程序, 輸入一個四則運算的表達式,在輸入 = 後自動輸出結果
1、首先,編寫C語言的頭文件#include <stdio.h>。
注意事項:
盡管C語言提供了許多低級處理的功能,但仍然保持著跨平台的特性,以一個標准規格寫姿虛出的C語言程序可在包括類似嵌入式處理器以及超級計算機等作業平山鎮台的許多計算機平台上進行編譯。
⑤ 用c語言編寫四則運算,急呀!越簡單越好
用純粹的C語言實現,代碼如下:
#include<stdio.h>
intmain()
{
doublea,b;
scanf("%lf%lf",&a,&b);
printf("a+b=%lf,a-b=%lf,a*b=%lf",a+b,a-b,a*b);
if(b==0)
printf(",error! ");
else
printf(",a/b=%lf ",a/b);
return0;
}