#include<stdio.h>
int GetPositiveInt(void);
int main(void)
{
int num = GetPositiveInt();
printf("%d",num);
return 0;
}
int GetPositiveInt(void)
{
int n;
do
{
printf("Enter a positive number : ");
scanf("%d",&n);
}while(n<=0);
}
輸出是n
的價值,但我不知道它是怎麼回到num
該輸出。 scanf()
和printf()
是否影響return
函數的值?請解釋一下代碼
如果我添加一條語句,如printf("%d",7)
; while
後輸出爲71
,不知道如何1
來。
This is我的輸出。這僅供參考。根據要求
文字: -
USR @ USR:〜/ C_programs $ GCC -std = C99 return.c -o返回
USR @ USR:〜/ C_programs $ ./return
輸入一個正數:45
45usr @ USR:〜/ C_programs $ ./return
輸入一個正數:89
89usr @ USR:〜/ C_programs $
你發佈的代碼甚至沒有編譯。在函數'GetPositiveInt()'(第2行)和'while'行之後的'return n;'語句聲明後需要分號。 – axiac
對不起,在申報中。但是對於回報n;部分,我最初的問題是,即使沒有使用return語句,我也在'num'中得到了'n'的值。此代碼的輸出打印出的值,n'我爲我輸入的 –
我看不到圖像你的o/p。請以文字形式發佈。 –