#include
網(wǎng)站制作、建網(wǎng)站找專業(yè)網(wǎng)站制作公司創(chuàng)新互聯(lián)建站:定制網(wǎng)站、模板網(wǎng)站、仿站、小程序定制開發(fā)、軟件開發(fā)、成都app軟件開發(fā)公司等。做網(wǎng)站價格咨詢創(chuàng)新互聯(lián)建站:服務(wù)完善、10余年建站、值得信賴!網(wǎng)站制作電話:18980820575
int
func(int
i);
//函數(shù)的原型定義
int
main(void)
{
int
n;
float
y;
scanf_s("%d",n);
//n沒有被初始化,為任意值,此時是讀取一個值給n,刪去,直接給n初始化為5也可以
scanf_s是vs2013編譯器專用的,請自行改成scanf
y
=
func(n);
/*函數(shù)的調(diào)用*/
printf("%d!=%f",
n,
y);
/*for語句多余*/
return
0;
}
int
func(int
i)
{
int
sum=0;
if
((i
==
0)
||
(i
==
1))
sum
=
1;
else
sum
=
func(i-1)
*
i;
//
i的值沒有變化,一直都是讀入的值,不會終止遞歸。
return
sum;
}
冒泡排序的循環(huán)寫法有問題,應(yīng)將:for (j=0; j=i; j++)
改為:for (j=0; j2-i; j++)
因?yàn)樵诘谝淮窝h(huán)中,不斷判斷相鄰兩數(shù),最終將最小數(shù)交換到最后,即a[2]的位置
在第二次循環(huán)中,再將a[2]之前數(shù)中的最小數(shù)交換到a[1]的位置,此時數(shù)組已降序排列
因此對于循環(huán)i(從0開始),每次都將a[0]~a[2-i]中的最小數(shù)交換到a[2-i]的位置
又判斷相鄰數(shù)用到了j+1,所以需要滿足j+1=2-i,即j=1-i,也可寫為j2-i
因此j從0開始,到1-i 結(jié)束,改為for (j=0; j2-i; j++)即可
修改后的代碼和運(yùn)行結(jié)果如下:
輸出正確,如果幫到你,望采納~
沒有收到返回值的原因
#includestdio.h
int
fun
(int
lim,int
aa[10])
{
int
i,j,k=0;
for(i=2;i=lim;i++)
{
for(j=2;ji;j++)
if(i%j==0)
break;
if(j=i)
aa[k++]=i;
}
return
k;
}
main
(
)
{
int
aa[10];
int
lim=10,k=0;
k=fun(lim,aa);//就是這里,要把函數(shù)返回值賦值給k,才行,主函數(shù)的k和fun函數(shù)的k是完全兩個東西
printf("%d\n",k);
}
一個函數(shù)只能有一個返回值,指針可以返回多個,例如:
void aaa()
{
int *a,*c;
int a,c;
*a=a;*c=c;
a=b();c=b();
}
下面調(diào)用 *a和*c.
擴(kuò)展資料:
在C語言中,指針的使用非常廣泛,因?yàn)槭褂弥羔樛梢陨筛咝?、更緊湊的代碼??偟膩碚f,使用指針有如下好處:
1、指針的使用使得不同區(qū)域的代碼可以輕易的共享內(nèi)存數(shù)據(jù),這樣可以使程序更為快速高效;
2、C語言中一些復(fù)雜的數(shù)據(jù)結(jié)構(gòu)往往需要使用指針來構(gòu)建,如鏈表、二叉樹等;
3、C語言是傳值調(diào)用,而有些操作傳值調(diào)用是無法完成的,如通過被調(diào)函數(shù)修改調(diào)用函數(shù)的對象,但是這種操作可以由指針來完成,而且并不違背傳值調(diào)用。
參考資料來源:百度百科-指針 (編程語言中的一個對象)
當(dāng)前標(biāo)題:c語言循環(huán)調(diào)用定義函數(shù) c語言函數(shù)的循環(huán)調(diào)用定義
當(dāng)前路徑:http://bm7419.com/article16/ddeggdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、建站公司、、小程序開發(fā)、網(wǎng)站設(shè)計、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)