簡體   English   中英

關於程序輸出的困惑

[英]Confusion about output of program

我是C編程新手,目前正在學習循環。 在下面的程序中

#include<stdio.h>
main()
{

    int i;

    for(i=1;i++<=5;printf("%d",i));

}

我試圖在dev c ++編譯器中進行編譯,但給出錯誤“ [Error] ld返回了1個退出狀態”

您需要包括<stdio.h>標頭,並且main還需要一個返回類型(int)和一個返回值。 將程序更改為此將使其編譯(至少使用GCC進行過編譯)並運行:

#include <stdio.h>
int main(int argc, char *argv[])
{

    int i;

    for(i=1;i++<=5;printf("%d",i));

    return 0;
}

您在“%d”中使用的引號也是非法的,請使用普通引號: "%d"

除此之外,在循環頭內執行printf可能是合法的,但這是非常糟糕的樣式。 通常在for循環中,您將在頭中具有初始化; condition; increment(或減量或w / e) ,並在語句主體中產生副作用。

我會嘗試將for循環編寫為:

for(i=1;i < 6;i++) { printf(“%d”,i); }
  1. 我已經在筆記本上手動運行了該程序,並且輸出為23456
  2. 然后我在Dev c ++上運行它,它給出了相同的輸出23456,沒有任何錯誤,我剛剛從ur問題中復制並粘貼了問題,不知道為什么它在ur運行時顯示錯誤是因為您沒有將其保存為C文件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM