亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

麻煩看看我的錯誤都在哪 我以后好注意下,謝謝~~~

麻煩看看我的錯誤都在哪 我以后好注意下,謝謝~~~

C
泛舟湖上清波郎朗 2023-04-22 19:15:50
幫我看看while括號中應該填什么如果 錯不在那 我應該改哪?#include<stdio.h>void displaymenu();main(){displaymenu();}void displaymenu(){printf("*****************************\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");}while(){menu();int a=0;scanf("%d",&a);switch(a){ case 1:{int i=0,j=0,add=0;scanf("%d%d",&i,&j);sum=i+j;printf("add=%d\n",add);};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");elseprintf("divide=%lf\n",divide);};break;case 5:{int i=0,j=0,arith-compliment=0;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;}}
查看完整描述

2 回答

?
慕的地6264312

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; 


}


查看完整回答
反對 回復 2023-04-26
?
慕姐8265434

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;

}

查看完整回答
反對 回復 2023-04-26
  • 2 回答
  • 0 關注
  • 257 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號