int qiuhe(int *arry) //求和函數 和最大不能超過int,如果需要不受限制,則要改進存儲方式
網站建設哪家好,找創(chuàng)新互聯!專注于網頁設計、網站建設、微信開發(fā)、微信小程序定制開發(fā)、集團企業(yè)網站建設等服務項目。為回饋新老客戶創(chuàng)新互聯還提供了金門免費建站歡迎大家使用!
{
int sum=0;
for(;*arry!='\0';arry++){
sum+=*arry;
}
return sum;
}
先獲取數組長度,然后用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跟變長數組沒有太大的關系,也應該用不到變長數組。因為一般的傳數組到函數中就是傳數組的地址和元素的個數的,那只是一個提示,不是要求。
參考資料來源:百度百科-數組
#includestdio.h
int sum(int n)
{
int i=0,s=0;
while(i=n)
{
? s=s+i;
? i++;
}
return s;
}
int main()
{
int n;
printf("請輸入要累積的數:");
scanf("%d",n);
sum(n);
printf("累加的結果為%d",sum(n));
return 0;
}
擴展資料:
使用函數的優(yōu)勢:
C語言程序鼓勵和提倡人們把一個大問題劃分成一個個子問題,對應于解決一個子問題編制一個函數,因此,C語言程序一般是由大量的小函數而不是由少量大函數構成的,即所謂“小函數構成大程序”。
這樣的好處是讓各部分相互充分獨立,并且任務單一。因而這些充分獨立的小模塊也可以作為一種固定規(guī)格的小“構件”, 用來構成新的大程序。
參考資料來源:百度百科-C語言
我知道了~
LZ
你代碼中sum=sum+expt(n);錯了
應該是sum=sum+expt(i);吧
要是按你這樣寫,當n=1是sum=expt(1)+expt(1)=3+3=6
所以沒有你預期的結果
先說個題外話,您認為k=add(i,j)比k=i+j簡單嗎? 回到正題,問題出在scanf,改成scanf("%d%d", i, j);就可以了。如果不改,那么你輸入就應該這樣(例如):3,5。輸出結果:8。也就是說,你必須在輸入時輸入兩個數,并且以“,”隔開。還有個問題,你的getchar不會使程序暫停,因為輸入隊列中的“\"傳入了getchar,你可以再加一個getchar,或者先清空輸入隊列,用scanf輸入函數使之停頓。也可以,或者改用system("pause")暫停程序。
當前題目:c語言函數的求和 c語言函數求和公式
轉載來于:http://m.newbst.com/article48/hihjep.html
成都網站建設公司_創(chuàng)新互聯,為您提供外貿網站建設、定制網站、軟件開發(fā)、移動網站建設、建站公司、手機網站建設
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯