C語言程式設計問題,感覺是陣列的運用可是還是不會,求大神指教

2021-04-02 12:48:08 字數 3313 閱讀 9090

1樓:

就是一個迴圈,把每次計算的結果放陣列中。

int i ;

long fib[40] ;

fib[0] = 1 ;

fib[1] = 1 ;

for( i = 2 ; i < 40 ; i ++ )fib[i] = fib[i-1] + fib[i-2] ;

陣列fib中存放的就是結果

有一個c語言的問題不會,求大神指教!!

2樓:知道

break 是跳出迴圈,

在此題中 a=2時, 執行break, 跳出迴圈, 執行下面的printf語句。

++a 是先進行a=a+1運算, 例如 b=++a 首先執行a=a+1 然後將加法後的a 賦值給b

a++ 是後進行a=a+1運算 同樣例如b=a++; 則將a賦給b, 然後執行a=a+1

3樓:

當a是偶數的時候退出迴圈。break退出最近的迴圈。

a++代表先使用a再加1

++a代表先加1再使用a

4樓:匿名使用者

在你這題中,只要符合a%2==0 這個條件就執行break語句,跳出for迴圈。 比如a++是先使用a的值以後,再對a執行自增運算。++a是先對a自增以後,再使用增加以後的a值。

5樓:匿名使用者

break 很簡單啊 跳出當前的迴圈 如果 a=2 的時候

6樓:暗室逢燈

printf("%d/n",b);}

一道c語言程式設計題,求大神指教!

7樓:匿名使用者

主函式已經寫出,只要補充函式的內容就可以了:

void printdigits(int n)for(j=i-1;j>=0;j--)

printf("%d ",a[j]);}

c語言指標++的問題搞不懂?求大神指教

8樓:丿艾瑞灬莉婭

陣列名等價於陣列第一個元素的地址,a等價於&a[0]

*ptr_a++,先執行輸出*ptr_a,再ptr_a++,即指向下一個地址

9樓:匿名使用者

答:int *p=&a[1] 即在建立指標p並且初始化的時候將陣列a的第二個元素的地址賦值,使得指標指向8的位置,(*--p)++ 就是指標p先自減1(因為p是int型別的指標,所以自減1就是p所儲存的地址值減去4個位元組)從而使得指標p指向a[0],*是取值運算子,++是字尾形式,所以將5賦值給y後a[0]的值再自加1為6,最後列印y與a[0]的值就是5和6。

c語言程式設計題求大神指教,,太笨了,想了一下午都做不出結果s=(2+3)+(2+3+5)+(2+3+5+8)

10樓:

供你參考……

#include "stdio.h"

void main(void)

printf("the result is %d.\n",s);}

11樓:匿名使用者

你把這個問題變成這樣

2 32 3 5

2 3 5 8

2 3 5 8 13

2 3 5 8 13 21

2 3 5 8 13 21 34

。。。。。。

你會發現有20個2,20個3,19個5,18個8,17個13,也就是首先算出20個3和2相加的結果,然後迴圈次數總共20,到1為止 每次減1,出現的新數可以通過兩個臨時變數a和b相加。。一次迴圈後將b的值付給a,新數的值付給b。。。。。。如果不能理解請追問,給**,望採納

12樓:匿名使用者

好吧 不會指標那我就來個不是指標的。也要多謝那個被推薦為答案的同學 你給了我不錯的思路...但是我想說...你的答案真的是錯的= =怎麼可能是乘二加上新的項呢...

貼上** 請樓主自己嘗試吧~

#include

#include

#include

int main()

{int a1,a2;

long tempres,tempadd,res;

int times;

int i;

printf("please input times(0 for exit):");

while(scanf("%d",×)&&(times!=0)){tempres=2;

res=0;

a1=2;

a2=3;

for (i=0;i

測試通過的~

13樓:楊武威

|#include

using namespace std;

//斐波那契數列遞迴實現通項公式 (括號裡的每一項的表示)int f(int n)

else

}//每個括號表示式的通項公式

int sum_n(int n)

{int sum = 0;

for(int i = 1;i

c語言,程式設計,是比較三個數的大小,老師說有問題,求大神指教。

14樓:弒緋

你這個錯誤在於當x>y的時候,你無法判斷y和w的大小

if(w

這樣才對

15樓:擦擦設定

如果你是要找最小值的話。的確是有問題,你可以測試一下輸入10,15,20,輸出的結果是20。

為什麼會出現這樣的問題呢?

10<15,z=10,15<20,z=20。return 20。

解決方法:

把min函式內的程式**改正成:

int z;

if (w < x)

else

return z;

16樓:冰旋華影

你試一下輸入1,2,3

但輸出是2

在min函式中w實際上沒有參與比較

當w最小時,程式就會出錯。

17樓:楓塵沉默

min(int w,int x,int y)

18樓:祜風

這個有問題的:如果w=1,x=2,y=3,你的程式找到的最小值就是2了。

z=(w

19樓:匿名使用者

int min(int w,int x,int y)

c語言程式設計問題,C語言程式設計問題?

int main printf 字母數 d n空格數 d n數字數 d n其他字元數 d n letters,space,digit,other return 0 第一個問題 無效的主要 i 100 i 100 第二個問題,到1 100奇 0 int i 1 i 1 100 i i 100 而 i ...

C語言程式設計問題,c語言程式設計問題

先while或do while輸入成績,成績放入先定義的陣列,直到輸入負數結束。然後for迴圈算出總成績,然後定義變數平均直,算出變數直。for迴圈裡套if條件低於60輸出。課本上有例子,你看呀。c語言程式設計問題 提問怎麼改。把replace函式提到main函式外面。提到main函式的前面。或者在ma...

C語言程式設計問題,c語言程式設計問題

我只感覺到上面的程式有錯誤,但是不是死迴圈啊。這句感覺就不對。d d 沒有對應的接受鍵盤輸入的變數。for j 0 j 5 j stu1 i tot stu1 i tot stu1 i score j 很明顯上面這樣輸入會造成越界。當j 4的時候stu1 i score 4 是沒有意義的。print...