C語言簡單程式,新手,不懂,請講解

發布 科技 2024-02-05
14個回答
  1. 匿名使用者2024-01-25

    我同意我樓上說的加{}來劃分級別,但是,其實沒有{},看看你發的這個**的縮排關係,也可以看出if和else的對應關係。

    然後,if 或 else 後面的語句可以看到關係。

    if(year%400==0)flag=1;此 flag=1 是必須滿足三個 if 的條件。 如果 flag=1 回車,則應縮排到 if (year%400==0) 下方。

    下一行的 flag=0 必須滿足可被 4 整除和可被 100 整除的條件,但不能滿足被 400 整除的條件。

    下一行中的 flag=1 必須滿足可除 4 的條件,但不能滿足 100 的可整除性條件。

    最後乙個 flag=0 只要不能被 4 整除,就取。

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

    上面的程式對於練習和理解ifs的巢狀還是有一定幫助的,其實程式可以簡化如下:

    #include ""

    main()

    int year;

    scanf("%d",&year);

    prinft("yes");

    else printf("no");

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

    if(year%4==0)

    if(year%100==0)

    if(year%400==0)

    flag=1;同時滿足 3 個如果

    else flag=0;只有前 2 個 ifelse flag=1 得到滿足; 只有第乙個 ifelse flag=0 才得到滿足; 他們都不滿意。

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

    #include ""

    main()

    int year,flag;

    scanf("%d",&year);

    if(year%4==0)

    else flag=0;}

    else flag=1;}

    else flag=0;

    if(flag) prinft("yes");

    else printf("no");

    加上這三對括號,你就明白了!! 呵呵。

    flag=1;這句話是當年%4==0; year%100==0;year%400==0 在滿足兩者時執行。

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

    學習C語言取決於天賦。 我不怕打你,你沒有天賦。

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

    有兩個常量是非法的:

    C 中只有乙個常數具有 x,那就是十六進製數。 例如,0x1234表示十六進製面額的 1234 的數字,則結果為 4660。 這個值的特點是小寫的 x 前面只能有 0,如 0x12ab 等等。

    沒有人這麼說,浮點值可以用科學記數法表示,但它們只能是整數、正整數或負整數。 它不可能是這樣的小數。 10 的冪實際上是 100*根數 10,顯然這個常數是沒有意義的。

    順便說一句,解釋各種定義:

    型別:float

    錯誤 99999 型別:int(對於超過 32 位的系統,否則很長)+ 100 型別:int,+ 為正號。

    錯誤的科學記數法。

    型別:字元指標。

    型別:Long Double(新 C 語言支援) 型別:float 正確的科學記數法。

    型別:float

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

    房東你好! 我不認為你問的是正確的問題! int a=12 34 56 78 這裡不應該是十進位,應該是十六進製的! 正確的是 int a=0x12 34 56 78,沒錯!

    我可以很清楚地告訴你,你一定知道它的儲存方式是大端機和小端機的評分!

    Little-endi:整數邏輯中最低的位元組放在記憶體的最低位址,第二低的位元組放在記憶體的第二低位址,依次儲存,例如0x12 34 56 78(十六進製數)是 78 56 34 X86 系列 CPU 是小端機器。

    大端機器:與小型機器正好相反。 例如,0x12 34 56 78 是記憶體中的 12 34 56 sparc,而摩托羅拉 6800 是大型機器。

    這是我在小型 PC 上編寫的驗證程式。

    #include

    int main(){

    int a = 0x12345678;

    char *p;

    p=(char *)a;

    for(int i=0;iprintf("%x ",*p);

    return 0;

    希望我的對你有幫助!

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

    像這樣的問題還有很多。 就是判斷大結局和小結局。

    int a = 1;

    int getbigorlittle(int *arg)char *pc = arg;

    if(*pc == 1)

    return 1;

    elsereturn 0;

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

    你對這個定義是錯誤的,它不是乙個陣列,那麼你怎麼能這樣寫呢?

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

    基本的 C 程式包含:

    1. 預處理命令(例如,匯入標頭檔案,開頭帶有 include 語句。

    還有定義常量。

    等)。2. 全域性變數的定義。

    2.函式宣告語句(即有函式返回值型別、引數型別、函式名,但沒有大括號。

    描述:根據 main 函式中的定義,定義了其他函式。

    如果它是在 main 函式之上定義的,則無需編寫宣告。

    3.入口功能是執行程式的main功能,即main功能。

    4.其他函式(實現某個函式,以前稱為)。

    這就是入門程式的基本結構你可以從書上開始寫作只有 main 功能的程式實現最基本的輸入和列印。

    再試一次分離輸入和列印功能編寫為兩個函式使用 main 函式呼叫它們。

    最後,逐步向程式新增內容使程式逐漸變得更加複雜(例如,新增迴圈、判斷、在函式之間傳遞值或位址)。

    如果還是寫不出來,那就先學會抄寫,把書打幾遍,再試著改。

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

    這是由於浮點錯誤造成的。 造成這種情況的根本原因是計算機使用的二進位 01** 不能準確地表示一些帶有小數位的十進位資料。 我們知道,將十進位值轉換為二進位值需要以下計算:

    1.整數部分:將整數連續除以 2,取餘數,然後再次將商除以 2,直到商等於 0。 然後將得到的餘數按相反的順序排列。 縮寫"除以 2 餘數法"。

    2.十進位部分:將十進位十進位轉換為二進位十進位數,採用"乘以 2 並四捨五入,按順序"法律。

    將 2 乘以十進位十進位取出得到的整數部分,將 2 乘以剩餘的小數部分,然後取出乘積的整數部分,直到乘積的小數部分為 0 或達到所需的精度。 然後把取出的整數部分按順序排列,即先取出的整數部分作為二進位小數位的高位,後面取出的整數部分作為低有效位。 縮寫"乘以分布 2 捨入法"。

    3.包含小數的十進位數轉換為二進位,整數和小數部分分別轉換,然後相加。

    這導致了乙個明顯的問題:有些十進位數不能轉換為有限的二進位數:

    末尾的省略號表示計算已用盡,二進位值 0011 無限重複。

    目前,浮點值按照 IEEE(電氣和電子工程師協會)754 浮點儲存器格式標準儲存在計算機上。

    IEEE 單精度浮點格式共有 32 位,包含三個組成字段:小數點後 23 位 f、8 位偏置指數 e 和 1 位符號 s。 這些欄位以連續的 32 位字儲存並編碼。

    其中 0:22 包含 23 位小數; 23:30 包含 8 位指數 e; 第 31 位包含符號 s。

    如下圖所示,我很羨慕:

    也就是說,我們在上面轉換的二進位**中只能儲存23位,即使資料型別是double,也只能儲存52位,這樣你就可以看到問題的原因。

    可惜我們不能從根本上解決問題,除非你能發明十進位計算機,但我們可以用曲線拯救國家:

    因為二進位值可以準確地表示整數(可以使用整數到二進位方法進行驗證),所以可以將十進位數乘以 10 或 100 等成為整數,然後進行整數運算,最後除以 10 或 100 得到結果;

    2.通過擷取有效小數位數等,然後對其進行處理來獲得結果的最佳近似值。

    3.對於可由有限長度的二進位值表示的十進位值,可以使用儲存大於其長度的位的資料型別。

    請參閱CNSD

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

    優先權:

    因此,它相當於:

    while((!x)!=0)

    當 x=0 時,它進入乙個迴圈,s+=++x; 最後,s=1,x=1。 然後是 ++x; 只是 x=2。

    如果再判週期前,就不符合條件退出迴圈。 所以正確答案是B

  13. 匿名使用者2024-01-13

    s+=++x 是 ++x,x=x+1=1,然後 s=s+x=1,然後 ++x,x=x+1=2

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

    這些字太小,無法清晰閱讀。 建議您自己輸入並執行它。

相關回答
13個回答2024-02-05

1.開啟Visual Stdio軟體,在空專案中新建乙個C語言程式的空檔案 >>>More

18個回答2024-02-05

此函式用於開啟指定檔案的預定義流:標準輸入、標準輸出或標準錯誤。 >>>More

4個回答2024-02-05

這是我的書名:

問題:輸入 2 個整數,計算並輸出它們的總和、差值、乘積和商。 要求程式輸入不同的資料並執行兩次。 >>>More

6個回答2024-02-05

總結。 讓我們從第乙個 while 函式開始,如果函式值不等於 -1,則可以執行下乙個函式。 >>>More

8個回答2024-02-05

從**本身和執行情況來看,可執行程式的內容與貼上的**不匹配(可能是修改後沒有重新編譯,而修改前的**執行,否則不會**現在出現可以編譯傳遞的錯誤,例如第二行末尾有更多的“op”, 和“現有1人捐款無產出”),修改建議如圖所示: