當前位置:首頁 » 編程語言 » C語言函數裡面能放數列嗎
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

C語言函數裡面能放數列嗎

發布時間: 2023-05-17 19:26:21

❶ 用c語言函數的遞歸調用實現求數列1,1,2,3,5,8……..前30項之和。

遞歸函數如下:
首先斐波拉楔數列的前n項和遞推公式為S(n)=S(n-1)+S(n-2)+1;
(根據通項公式a[n]=a[n-1]+a[n-2]很容易推導出來遲孝)
遞歸函爛旦碰數如下所飢談示;
int sum_Fibonacci(int n)
{
if(1 == n)
return 1;
else if(2 == n)
rerurn 2;
else
return sum_Fibonacci(n-1)+sum_Fibonacci(n-2)+1;
}

❷ 怎樣用c語言函數的方法來編程:數列1,1,2,3,5,8……,求第20 項

基本是「斐波拉契數列」最原始的是0,1,1,2,3,……
從第3項後每項的值是前兩項的和。
下面用函數的遞歸調用求第20項的值。
——————————————————————————
#include <stdio.h>
int sn(int n);
int main()
{
int n=20;
printf("s20=%d\n",sn(n));
getch();
return 0;
}
int sn(int n) /*定義的求第n項的函數*/
{
int s;
s=n>2?sn(n-1)+sn(n-2):(n>1?2:1); /*遞歸調用部分,重點在這*/
return s;
}

❸ c語言問題,函數中能使用數組嗎

題主的min函桐純雀數里定義的數組沒賦值,所以才會出現亂碼。
解局早決方法:給tensu數組賦值,tensu[0] = x; tense[1] = y; tense[2] = z; 然後在進行比較。
或直接在min函數里進行x,y,z的比較褲搜。

❹ c語言 用函數編寫Fibonacci數列問題

#include<stdio.h>
intfib(inta);
main()
{
intn;
scanf("拍拆裂%d",&n);
fib(n);
}
intfib(inta)
{
intb[100];
inti;
b[0]=1;
b[1]=1;
for(i=2;i<=a-1;i++)
b[i]=b[i-1]+b[i-2];
for(i=0;i<a;i++)襲閉//b[a]沒有被賦值,不能輸出它的值
{
printf("%d ",b[i]);
if((i%4)==3)//每四個換行,應該是取余為3的時候列印換行符
printf(" ");//列印御叢換行符應該在for循環裡面
}
returnb[a];
}

❺ 問一道有關C語言的編程題 在主函數中輸入一個數列20個整數,對從指定位置

voidinvert(int*p,intm,intn)
{intt;
n+=m-1;
for(;n<慧悶m;)
罩旁前悶彎{t=p[n];p[n++]=p[m];p[m--]=t;}
}

❻ c語言:編寫函數將某數插入一組已經排好大小的數列中

你怎運洞么可以在main函數內敬爛聲明insert()
去掉亮悄漏void insert();這一行
或者改成void insert(int [],int,int);

❼ C語言,編寫函數計算數列

#include #define COL 10 //一行輸出10個 long scan() { //輸入求fibonacci函數的第N項 int n; printf("Input the N = "); scanf("%d",&n); return n; } long fibonacci(int n) { //fibonacci函數的遞歸函數 if (0==n||1==n) { //fibonacci函數遞歸的出口 return 1; } else { return fibonacci(n-1)+fibonacci(n-2); //反復遞歸自身函數直到碰到出口處再返回就能計算出第n項的值 } } int main(void) { int i,n; n = scan(); printf("Fibonacci數列的前%d項\n", n); for (i=0; i

❽ 可以在C語言子函數中定義數組嗎

可以,但是定義的數組的作用域僅在本函數中,調用函數不可用

❾ 誰能給我一個用C語言寫的等差數列函數

int fun(int a){ int b[9],i,j,k=0; //10個數字之間的差共有9個所以b數組為9 j=a[1]-a[0]; //現確定下等差 for(i=0;i<9;i++) b[i]=a[i+1]-a[i]; //將a數組中的前後兩項的數的差值存入b數組中 for(i=0;i<9;i++){ if(j==b[i]) //判斷b數組中的數是否於開始確定的差值相等 k++; } if(k==9) //判斷是否所有的差值都相等 return 1;elsereturn 0;}main(){ int a[10],i,j; for(i=0;i<10;i++) scanf("%d",&a[i]); //輸入10個數字 j=fun(a); //調用函數fun if(j==1) printf(" yes\n"); else printf(" no\n");}你沒說要判斷的數列是多長我自己定義了10個,你可以自己改。

❿ c語言中可以使用char[]={'a','b','c'}這樣的數列函數嗎

可以。。這么寫不報錯