C語言 void不能返回值,指標來返回

2021-10-10 23:32:39 字數 689 閱讀 6364

題目:請編寫函式void fun (int x, int pp, int *n),它的功能是:求出能整除x且不是偶數的各整數,並按從小到大的順序放在pp所指的陣列中,這些除數的個數通過形參n返回。

例如:若x中的值為30,則有4個數符合要求,它們是1、3、5、15。

注意:請勿改動主函式main和其他函式中的任何內容,僅在函式fun的花括號中填入你編寫的若干語句。

編譯環境:vs2010

#include

#include

#include

void

fun(

int x,

int pp,

int*n)

void

main()

答案與解析

int i, j =0;

for(i =

1;i <= x;i +=2

)if(x % i ==

0) pp[i++

]== i;

*n = j;

ps:指標傳輸位址的優點,在於雖然返回主函式時指標*n的記憶體空間已經被釋放了,但是他所指向的n的值以在自定義函式中被改變,相當於把n的值返回了。

C語言通過指標引數返回值

簡單的案例2.0 一般來說,在c語言中乙個函式頂多只能返回乙個值,那麼我們如何設計能巧妙的返回多個我們需要的值呢?先來看簡單的題,我們有乙個長度為10的int型陣列 int arr 現在我們需要寫乙個函式,找出此陣列中最大值和最小值。滑稽.jpg 若是不用寫函式,直接通過for遍歷我們直接就能遍歷到...

C語言函式返回值為指標和函式返回值為void

有時遇到函式返回值為空和函式返回值為指標的情況下,需要在前面定義該函式 函式的返回值為指標也必須在此定義,函式的返回值為void必須在此定義,返回值是整形或者其他基本型別不需要在此定義 函式功能 把格式化的資料寫入某個字串 函式原型 int sprintf char buffer,const cha...

用C語言指標作為函式返回值

c語言允許函式的返回值是乙個指標 位址 我們將這樣的函式稱為 指標函式。下面的例子定義了乙個函式 strlong 用來返回兩個字串中較長的乙個 複製 純文字複製 include include char strlong char str1,char str2 else int main includ...