另C語言問題,另乙個C語言問題?

2021-03-04 08:54:49 字數 1838 閱讀 2492

1樓:小黑哎啊

#include

int fun(int a)

int  main()

c語言:可以在乙個函式中定義另乙個函式為什麼不對?

2樓:匿名使用者

語法規定,這是不對的,如果那麼做會出現編譯錯誤。

函式是用來呼叫並實現某種功能的。作為一種方法,函式是獨立的。正是因為這種特性,才把一些特殊的、常用的方法抽取出來封裝成乙個個的函式。

因此把乙個函式寫在另乙個函式裡面也已經失去了函式本身的意義。

3樓:金色潛鳥

c語言程式結構是:

標頭檔案和巨集

全域性量宣告

主函式main

函式1函式2。。。。

函式nc語言程式,必須有乙個主函式,可以有1個或多個其它函式,所有的函式塊是平行的,並列的。

不允許 在乙個函式中定義另乙個函式。

語法規則如此。這只是一種規定和約定。並不是說其它的計算機語言,或將來發明的計算機語言也必須如此。

4樓:匿名使用者

呵呵,這個問題簡單的回答是c語言規定了不能這樣。c語言是計算機的一門語言,也有其特定的語法,就像英語那樣,不合語法規定的我們就認為是錯誤的或不地道的或有歧義的。但計算機只有正確(1)與錯誤(0),沒得選了。

至於為什麼當初制定語法時這樣規定了(好像是先有實踐,後有理論的哦,呵呵),我認為可以從下面的幾點看:

1。從c/c++編譯器編譯方式來看。編譯器編譯的方式是逐條往下編譯的。

要是乙個函式中又定義乙個函式,則編譯器很容易搞混,分不清到底那一句是函式1的那一句是函式2的,就很有可能上面一句是函式1的,下一句就直接跳到函式2的,跳來跳去的,也只有人能認清,計算機沒有像人那樣的跳躍思維。所以,語法就這樣規定了,這樣就可以避免很多的混亂和錯誤。

2.從審美的角度來看。其實不用我多說,你一看到乙個函式裡又定義另乙個函式時,你就覺得很亂了。尤其是當**寫得很長很長是,更弱爆了!

3.從使用,管理方便角度看。這樣規定了,可以使程式設計模組化,就是不用等前面的寫完,後面的才能寫。它可以同時進行n個模組(模組可以簡單的認為是乙個或多個的函式),方便且提高效率啊。

5樓:陌語哲偤

簡單的是c語言規定了不能這樣。c語言是計算機的一門語言,也有其特定的語法,就像英語那樣,不合語法規定的就認為是錯誤的或不地道的或有歧義的。

乙個c語言問題

6樓:匿名使用者

說白了,就是兩層迴圈,第五行就是i從1加到5,執行五次,第七行是j從1加到5,也是執行五次。

但要注意了,i=1的時候,裡面的要執行一次,這一次包含j的五次執行,所以一共是5*5次執行

7樓:匿名使用者

double sumfu=0,summo=0,y=0.001,m,sum1=0,sum2=0; 這裡y=0.01

sumfu=m*i-y; 這裡不應該-y,只計算得到的,如果-y是淨值

if(sumfu判斷條件也不對,sumfu,summo是兩人一天的賬目,不是總數,應該用sum1

8樓:

應該這樣子,只需要計算富翁的收入就行了 不需要管陌生人的,無視乙個月是38天吧。。。 另外 一分確實是0.01元。。。不是0.001

#include

int main()

/*只要富翁的收入小於0 ,就說明他開始虧了*/}}

9樓:匿名使用者

乙個月38天。。。。。。。

y=0.001.........大哥,你是中國人不?1元錢是1000分麼?

c語言問題,乙個c語言問題?

gcc是乙個著名的編譯器,屬於gnu編譯器套件,可以編譯很多種語言,一般用於編譯c c 程式,是linux下常用的編譯工具 編譯器只能說是一種翻譯 的程式,我們所熟知的dev c vs等其實屬於ide 整合開發環境 ide一般指包括了編譯器,編輯器等多種功能的軟體,功能比編譯器更加強大 linux下...

C語言問題,乙個C語言問題

4?結果是m 6吧 i 1,j 3時,if條件不成立m 3 i 1,j 2是,if條件不成立m 6 i 1,j 1,時,if條件不成立m 6 i 2,j 3時,if條件成立,執行break,顯示內層迴圈結束返回外層迴圈 i 3,退出外層迴圈 輸出m值6 i 1j 3i j 3 m i j m 3 j...

C語言問題,乙個C 語言問題

以後樓主要注意自己c語言程式的書寫格式,這樣也有助於我們分析你的題目,幫你解答。我給上訴的題目重新編了正規的格式,應該跟你要表達的意思相同。include void main 幾個知識點!第一 這裡你要懂得for語句的組成方式,和執行順序。for的組成方式為 for 表示式1,表示式2,表示式3 f...