2 回答

TA貢獻1817條經驗 獲得超6個贊
你這個代碼的問題太多了,下面已經給你一一改過來了,并且編譯運行通過了,自己比較一下:
你原先的錯誤都給你標出來了:
#include<stdio.h>
void displaymenu() //這個函數應該放在main函數外面進行定義
{
printf("\n\n*****************************\n");
printf("* 1.加法 *\n");
printf("* 2.?法 *\n");
printf("* 3.乘法 *\n");
printf("* 4.除法 *\n");
printf("* 5.求余 *\n");
printf("* 6.?乘 *\n");
printf("* 7.累加 *\n");
printf("* 8.?束 *\n");
printf("*****************************\n");
printf("????型<1,2,3,4,5,6,7,8>?\n");
}
main()
{
while(1) //這里應該是while(1),以實現循環的執行
{
displaymenu(); //這里原先筆誤成menu()了,應該是displaymenu()
int a=0;
scanf("%d",&a);
switch(a)
{
case 1:
{//int i=0,j=0,add=0; 這里少定義了一個sum=0;
int i=0,j=0,add=0,sum=0;
scanf("%d%d",&i,&j);
sum=i+j;
printf("add=%d\n",sum);
};break;
case 2:
{int i=0,j=0,sub=0;
scanf("%d%d",&i,&j);
sub=i-j;
printf("sub=%d\n",sub);
};break;
case 3:
{int i=0,j=0,multi=0;
scanf("%d%d",&i,&j);
multi=i*j;
printf("multi=%d\n",multi);
};break;
case 4:
{int i=0,j=0;
float divide=0;
scanf("%d%d",&i,&j);
divide=i/j;
if(j=0)
printf("erro\n");
else
printf("divide=%lf\n",divide);
};break;
case 5:
{int i=0,j=0,arith_compliment=0; //這里原先的arith-compliment,不是C語言的合法變量名(變量名中不能有“-”)
scanf("%d%d",&i,&j);
arith_compliment=i%j;
printf("arith-compliment=%d\n",arith_compliment);
};break;
case 6:
{int i=0;
float fac=1.0;
for(i=1;i<=9;i++)
fac=fac*i;
printf("\n");
printf("fac=%lf",fac);
};break;
case 7:
{int i=0,sum_N=0;
for(i=0;i<=9;i++)
sum_N=sum_N+i;
printf("\n");
printf("sum_N=%d",sum_N);
};break;
}
}
}

TA貢獻1813條經驗 獲得超2個贊
#include<stdio.h>
void
js(float *i,int j,char c)
{
float m;
scanf("%f",&m);
if(c=='*')
i[j]=i[j]*m;
else
i[j]=i[j]/m;
}
void
js2(float *i,char *c,int j,int k)
{
for(;j>0;j--,k--)
{
if(c[k]=='+')
i[j-1]=i[j-1]+i[j];
else
i[j-1]=i[j-1]-i[j];
}
}
int
main(void)
{
int ic=0,j=0,k=0;
float i[100];
char c[100];
while(1)
{
if(ic==0)
{
scanf("%f",&i[j++]);
ic=1;
}
if(ic=1)
{
c[k++]=getchar();
if(c[k-1]=='*'||c[k-1]=='/')
{
js(i,j-1,c[k-1]);
k--;
continue ;
}
else if(c[k-1]=='\n')
break;
ic=0;
}
}
js2(i,c,j-1,k-2);
printf("%f",i[0]);
return 0;
}
- 2 回答
- 0 關注
- 257 瀏覽
添加回答
舉報