1樓:匿名使用者
檢測的迴圈有點問題,根本進入不了迴圈
linshi<=1,這個是進入迴圈的條件,只有1的時候才能進入迴圈其實判斷素數的子函式有經典的**
int s(int n)
2樓:
for(linshi = number -1; linshi<=1;linshi--) //《這個條件錯了,至少也是 linshi>=2
if (linshi==1) //《如果前邊沒錯誤,這個判斷是多此一舉
return 1;
因前邊沒進迴圈體,這裡造成函式退出時沒有返回值,函式外面的等號賦值取到的是暫存器中不確定的數
3樓:kernelx程式設計
for(linshi = number -1; linshi<=1;linshi--)
你的for裡面有 linshi--; 兩個,v = number % linshi; 很容易為0,而下面,就退出了....
if (v == 0)
return 0;
4樓:id雞蛋炒韭菜
linshi<=1
lz太粗心了。。。。。。。。。
5樓:
素數是這樣求?如果這個數是n,那麼只要是判斷從2到根號n吧。你這個檢查素數的演算法沒看懂
c語言中return的用法疑問
6樓:匿名使用者
額……return就直接跳出你這個函式了……你如果想繼續執行下一次新的迴圈應該是continue;如果想跳出迴圈應該是break;return這個用的不對吧……
7樓:匿名使用者
不要這樣理解,return的意思就是返回,只要是函式,都可以用return來退出該函式,不執行剩下的所有**,舉個例子
void fun()
8樓:綠葉
如果你想達到這個目的,應該用 break; 退出第一層while,這樣就進入while(1)
c語言中return的數值問題
9樓:丿艾瑞灬莉婭
那樣程式結束時返回值就是99,平時自己寫東西沒有半點影響,但如果是去oj做題就有可能會報錯
10樓:青春在阪命
main函式返回0視為正常返回,呼叫main的程序會檢查返回值。
自己寫的函式的返回值一般也是用來判斷函式是否正常結束或要判斷返回值來做其他操作。
c語言中return用法
11樓:龍
第一個作用,也就是他的真實作用
返回值,這個返回值是和函式的型別有關的,函式的型別是什麼,他的返回值就是什麼
比方主函式int main()
{}這裡就必須有一個return,只有void時可以不用返回值。
功能函式
int fun()
這個時候fun函式的作用就是返回一個int 型別的值,可以直接拿來用比方int a=fun();
這裡就相當於int a=1;
另外一個作用return後面的語句不會執行,我們可以用它來結束程式比方找出三個數種最大的一個數
void main
.....
}在這裡if(b>c)
我們就可以直接得出a是最大了,就沒必要執行下面的語句了,return治理就起到了終止語句的作用了
等用得多了還會有些妙用的
c語言中的clock 問題,c語言中的問題?
就是while clock now 的意思,注意後面還有個分號,這是一個空迴圈。因為clock會返回當前時間,now是一個過去的時刻,所以這個條件的意思是 當前時間比那個時刻晚的多少小於clocks per sec,也就是如果時間相差還不到clocks per sec就一直迴圈。因此這個迴圈的意思就...
c語言中遇到的問題,C語言中遇到的問題!
printf 系列函式輸出格式萬用字元 d 表示將輸出值以整數對待 c 表示以 ascii 字元對待 f 表示以32bit浮點數對待。舉例如下 printf d v 此時不論變數 v是何種型別,都輸出對應的整數值,比如 v是一個指標,則輸出指標地址。printf c v 此時不論變數 v是何種型別,...
C語言中陣列問題
這段 是統計你輸入裡邊0 9的數字個數,輸入的字元用asc碼錶示,c的變數指代輸入的字元,那麼c 0 c 9 這個條件就判斷輸入的是否為數字,c 0 是一個表示式,將會返回你所輸入字元的與字元 0 的差值,例如你輸入的值是字元 1 這個表示式為 1 0 兩個在asc碼中差值為1,故shuzi中下標為...