函數返回值類型:(void)也就是不需要返回值。
目前創(chuàng)新互聯已為成百上千家的企業(yè)提供了網站建設、域名、網站空間、網站托管、企業(yè)網站設計、威信網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協力一起成長,共同發(fā)展。
函數名:abd
函數參數:int型數組
這里調用的時候,需要給函數abd一個參數,可以是數組名,也可以是一個指向int數組的指針。
注意數組參數為數組,是傳址,也就是說如果abd函數對arr形參操作會改變外部函數實參的值。
給你看一下我的代碼
#includestdio.h
void main(){
int a[10],b[10],i,j,temp;
for(i=0;i10;i++){
printf("請輸入第%d個數:",(i+1));
scanf("%d",a[i]);
//保存數組,因為輸入完數組要冒泡排序,排序后的元素順序可能和原數組不一樣
b[i]=a[i];
}
//冒泡排序,求最大值
for(i=0;i9;i++){
for(j=0;j9-i;j++){
if(a[j]a[j+1]){ //這里控制的升序還是降序,我這是降序
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
//查找最大值在原數組的位置
for(i=0;i10;i++){
if(b[i]==a[0]){ //降序的話最大值是a[0],升序的話最大值是a[9]
break; //一旦找到最大值,馬上跳出循環(huán)
}
}
printf("最大值是%d,它在原數組中是第%d個元素!\n",a[0],(i+1));
}
先獲取數組長度,然后用for循環(huán),從數組中獲取值進行累加求和。
#include
#include
int main()
{
int n;
int val;
int * a;
int sun = 0, i;
printf("請輸入數組的長度:");
scanf("%d", n);
printf("\n");
a = (int *)malloc(n * sizeof(int));//為數組a動態(tài)分配內存
for(i = 0; i n; i++)
{
printf("請輸入數組的第%d個元素的值:", i+1);
scanf("%d", val);
printf("\n");
a[i] = val;
}
for (i = 0; i n; i++)
{
sun+=a[i];//sun+=a[i]相當于sun=sun+a[i];
}
printf("sun = %d\n",sun);
free(a);//釋放a動態(tài)分配的內存
return 0;
}
擴展資料:
一個數組中的所有元素具有相同的數據類型(在C、C++、Java、pascal中都這樣。但也并非所有涉及數組的地方都這樣,比如在Visual Foxpro中的數組就并沒這樣的要求)。當然,當數據類型為 Variant 時,各個元素能夠包含不同種類的數據(對象、字符串、數值等等)。可以聲明任何基本數據類型的數組,包括用戶自定義類型和對象變量。
如果要用戶輸入的是一個數組,一般是用一個循環(huán),但是在輸入前也需要固定數組的大小。
compact跟變長數組沒有太大的關系,也應該用不到變長數組。因為一般的傳數組到函數中就是傳數組的地址和元素的個數的,那只是一個提示,不是要求。
參考資料來源:百度百科-數組
來傳送子函數中的數組有多種方法——可以通過函數返回值返回地址傳遞數組;也可以通過函數輸入參數來傳遞數組;還可以通過全局變量來傳遞數組。
子函數本身可以直接在作用域中進行調用。
1、通過函數返回值返回地址傳遞數組。
聲明函數時需要聲明函數返回值類型為對應數組的地址,此時可以返回數組的地址,結合數組元素的地址關系可以傳遞整個數組,同時可以根據數組的特性傳遞多個參數。
2、通過輸入參數傳遞數組。
聲明函數時提供空輸入參數,調用函數時提供目標數組,即可以通過該數組調用子函數中的數組,該方法也可以用于傳遞多個參數。
3、通過全局變量來傳遞數組。
聲明全局變量用于存儲子函數中的數組,此時可以在全局變量作用域中讀取調用子函數的數組。
注意:子函數是C語言模塊化編程思想的核心,其方法是通過輸入接口和輸出接口實現對黑盒的調用,故對其內部數據的輸入和調用也需要通過輸入接口、輸出接口和程序的公共區(qū)域實現。
//考點是數組作為參數入參,第一個參數為數組指針,第二個參數為數組長度,第三個參數為被成書
void?func(int?a[],?int?size,?int?x){
for(int?i?=?0;?i??size;?i++){
a[i]?*=?x;
printf("%d?",?a[i]);
}
printf("\n");
}
int?main(){
int?a[4],?x;
scanf("%d,%d,%d,%d",?a[0],?a[1],?a[2],?a[3]);
scanf("%d",?x);
func(a,?4,?x);
return?0;
}
網頁標題:c語言數組和函數,c語言數組和函數的關系
瀏覽路徑:http://muchs.cn/article48/phjjhp.html
成都網站建設公司_創(chuàng)新互聯,為您提供微信公眾號、做網站、企業(yè)建站、建站公司、手機網站建設、ChatGPT
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯