程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C >> C語言問答 >> c語言超級簡單代碼編譯問題..汗啊

c語言超級簡單代碼編譯問題..汗啊

編輯:C語言問答

c語言超級簡單代碼編譯問題..汗啊

10

#include<stdio.h>
void main()
{                                            \\
    int max(int x,int y);
    int a,b,t;
    printf("please input two integer number:\n");
    scanf("%d,%d",&a,&b);
    t=max(a,b);
    printf("The max is %d",t);

}

int max(int x,int y);
{                                     /*錯誤信息提示說這一行有問題*/
    int z;
    if(x>y) z=x;
    else z=y;
    return (z);
    getch();
 }

 

____________________________

如上的代碼....自學c....先用筆寫了一下代碼.然後上機操作一下吧...居然出問題了...

\

錯誤提示:錯誤 noname.c 14: 說明語法錯誤

 

 

問題到底出現在那兒裡...先謝了..

最佳回答:

你的問題在於把函數聲明放在了主函數內部,而且函數實現時是不能加;的

而且返回z後,函數的調用結束了.  getch();
是無用的

#include<stdio.h>
int max(int x,int y);
void main()
{                                            //
   
    int a,b,t;
    printf("please input two integer number:\n");
    scanf("%d,%d",&a,&b);
    t=max(a,b);
    printf("The max is %d",t);

}

int max(int x,int y)
{                                     /*錯誤信息提示說這一行有問題*/
    int z;
    if(x>y) z=x;
    else z=y;
    return (z);
   
 }

 

這樣就對了

追問:

我用的win-tc編譯的..getch();不能丟...這個不用管..

 

按照哥的修改我在編譯運行時還是出現錯誤了..主函數中對自定義函數max();進行調用時不要事先聲明一下麼?

另外就是scanf("%d,%d",&a,&b);在運行時怎麼輸入: 是輸入一個數後按一下, 逗號...再輸第二個?  我試了..輸完兩個數..dos編譯環境跳轉沒了...為了避免那個小錯誤..我把scanf("%d%d",&a,&b); 輸入兩個數時  是先輸入一個數按回車再輸第二個數對嗎?  這樣結果跟那個一樣還是跳轉沒了DOS編譯環境.....不知怎麼回事..

回答:

調用前是要聲明,但應該放在主函數以外啊

運行時就是從鍵盤輸入啊 輸一個1 空一格 再輸一個2 再 回車

建議你使用VC6.0 好了 TC太古董了

 

追問:

按照哥的說法...放到了vc6.0裡面了...getch();也去掉了...也是按照哥說的那樣從鍵盤輸入兩個數 但是運行時還是出現那個毛病....看不到結果..直接跳出編譯環境;了....哥該怎麼整呢?

追問:
好了哥...調試好了..謝了啊.
回答:

不好意思 剛才說錯了 你運行時候應該輸入一個數以後輸入一個逗號再輸第二個

不然結果不對

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved