C語言超級菜鳥問師傅

發布 科技 2024-06-24
12個回答
  1. 匿名使用者2024-01-29

    您正在定義乙個雙精度型別,您應該使用 %lf 格式化程式(而不是 %d)輸入該型別,以便將小數四捨五入,結果將為 0,這是鍵。

    #include

    #include

    void main()

    double money,capital,year,rate;

    rate=;

    printf("請按順序輸入本金金額和存款期限:");

    money=capital*(pow(1+rate,year));

    printf("%lf 到期後的本金和利息之和",money);

  2. 匿名使用者2024-01-28

    到期後的本金和利息之和為",money);

    格式不正確。 資本年,錢是雙倍的%d 不能使用

    更改為 printf("%f 到期後的本金和利息之和",money);

  3. 匿名使用者2024-01-27

    改了一點,看看。

    你還沒有弄清楚你的輸入和輸出、、

    #include

    #include

    void main()

    float money,capital,year,rate;

    rate=;

    printf("請按順序輸入本金金額和存款期限:");

    scanf("%f%f",&capital,&year);

    money=capital*(pow(rate+1,year));

    printf("%.2f 到期後的本金和利息之和為 %2f",capital,money);

  4. 匿名使用者2024-01-26

    A[0][0] 即 3A[0][1]即2A[0][2]即13 2 1,表示式值為1

  5. 匿名使用者2024-01-25

    3 行 2 列,a[0][2] 不存在,將報錯。

  6. 匿名使用者2024-01-24

    <> “I. 賦值的初始化。

    很多人都知道這是靜態初始化陣列的方法:int fibs[1=,C99 標準實際上支援一種更直觀、更簡單的方法來初始化各種不同的集合資料(例如,結構體、聯合和陣列)。

    2. 陣列。 我們可以指定要初始化的陣列元素。 這非常有用,尤其是當我們需要根據一組定義同步更新某種對映時。

    現在,假設我們想為每個錯誤程式碼提供一串錯誤描述。 為了確保陣列是最新的,我們可以使用此陣列指定的語法,而不管對頭檔案進行了任何更改或新增。

    這允許您靜態分配足夠的空間並確保最大索引有效,同時將特殊索引初始化為指定值,將其餘索引初始化為 0。

    3. 結構和聯盟。

    使用 structs 和 union 的欄位名稱初始化資料很有用。 假設我們定義了 :struct point,然後我們初始化了 struct point:

    truct point p {.x 3,.y 4,.

    z 5];當我們不想將所有字段初始化為 0 時,這可以很容易地在編譯時生成結構,而無需呼叫初始化函式。 對於聯盟,我們可以使用相同的方法,只是我們只需要初始化乙個字段。

    第四,巨集觀列表。

    C 語言中常見的方法是說有乙個命名實體列表,您需要為每個實體建立函式,初始化每個實體,並在不同的模組中擴充套件它們的名稱。 這在墨子訓練的原始碼中經常用到,當時我就學會了這個技術。

    例如,在我去年夏天參與的那個專案中,我們為每個命令標記了乙個巨集列表。 它定義了乙個標誌列表巨集,該巨集具有乙個稱為引數本身的引數,該巨集可以呼叫列表中的每個引數。

    5. 編譯時斷言。

    這實際上是乙個非常“有創意”的功能,使用 C 巨集實現。 有時,尤其是在對核心進行程式設計時,能夠在編譯時有條件地檢查斷言,而不是在執行時進行平衡,這很有用。 不幸的是,C99 標準不支援任何編譯時斷言。

    但是,我們可以使用預處理來生成 **,它只會在某些條件為真時通過編譯(最好是那種實際上不執行該功能的命令)。 有多種不同的方法可以做到這一點,通常是通過構建負大小的陣列或結構。

  7. 匿名使用者2024-01-23

    這是因為,陣列是乙個順序結構,陣列的位址是連續的,你設定的陣列的長度是2,其實他的實際長度比這個大,看我的圖定義2,實際大小是4,而且因為陣列是連續的,所以當你越過邊界時, 輸出只有在你遇到 0 時才會結束,所以它總是會輸出,你會遇到這種情況。這時,如果你用strlen測試陣列長度,你會發現它增加了,或者因為0。 這種越界是不推薦的,因為你的記憶體位址是很多空閒的,所以你可以用它,但畢竟是越界的,所以還是符合規範的。

    不同的編譯器可能會有不同的結果,以上是VC++希望對大家有所幫助。 如果您有任何疑問,可以繼續溝通。

  8. 匿名使用者2024-01-22

    char str[2];這句話是用來定義乙個陣列的,陣列中可以儲存的型別是字元,長度為2

    這意味著當您執行此程式時,它可以儲存您鍵入的兩個字元。

    如果是 8,您可以儲存輸入的 8 個字元。

  9. 匿名使用者2024-01-21

    C 編譯器不執行越界檢查。 此外,在傳遞引數時,get 只獲取 str 陣列的第乙個位址,並且不知道它的長度,因此您必須處理此檢查。

  10. 匿名使用者2024-01-20

    str[2] 其中 2 是 str,此陣列的大小為 2 個字元。

  11. 匿名使用者2024-01-19

    你在問什麼?

  12. 匿名使用者2024-01-18

    好像公元元年元旦是星期日,正常年有365天,餘數除以7就是1,所以可以看出,如果今年是正常年,今年每月的某一天是星期一。 那麼第二年的同一天是星期二。 如果是閏年。

    餘數除以 7 等於 2,同樣,如果閏年每月的某一天是星期一,那麼第二年的某一天就是星期三。 類比。

    如果一年是 364 天,那麼一年中同一日期對應的星期幾是固定的(364%7=0),但實際上平年多了一天,閏年多了 2 天,那麼公元一年的 c 天多了一年-1 + 閏年數 + c 這麼多天, 能被 4 整除但不能被 100 整除或能被 400 整除的年份是閏年,c 表示該日是一年的第一天,所以得到上面的公式,當然是 s=(year-1)*365+(year-1) 4-(year-1) 100+(year-1) 400+c;最終結果是相同的,因為 ((year-1)*365+(year-1) 4-(year-1) 100+(year-1) 400+c)%7 等於 ((year-1)+(year-1) 4-(year-1) 100+(year-1) 400+c )%7 等價於簡化。

相關回答
15個回答2024-06-24

#include

void main() >>>More

8個回答2024-06-24

讓我們先澄清幾個問題。

1。讀取檔案本身沒有格式,但讀取器根據自己定義的格式讀取檔案,因此檔案本身不需要區分 txt 和 dat 格式。 >>>More

6個回答2024-06-24

這麼簡單的問題,你不想想就出來了嗎

18個回答2024-06-24

第乙個問題是傳遞函式 goto

第二個問題是,如果滿足上述條件,則 else 不執行 else,如果有多個 if 滿足條件,則執行其中的幾個。 >>>More

16個回答2024-06-24

此應用程式用於:

1. 求平均值。 >>>More