c語言程式解析,請問這個c語言程式函式如何解讀?

2023-03-25 23:10:02 字數 3213 閱讀 3269

1樓:匿名使用者

你的意思是讀一段程式知道它什麼意思嗎?那就照它規則讀嘍。

2樓:蒼溪

不明白你說的意思!

3樓:匿名使用者

int a=100;//定義int型變數a,初始化為100. int 1=100是錯誤的,應該是手誤吧。

if(a>100) printf("%d",a>100);如果a>100,那麼輸出a>100這個表示式的值,然後換行。

else printf("%d",a<=100);否則就輸出a<=100這個表示式的值,然後換行。

如果a>100的話,那麼表示式a>100為真,表示式的值就是1

如果a>100不成立,也就是a<=100的話,那麼表示式a<=100為真,表示式的值為1

所以輸出都是1

如果你是想a>100就輸出"a>100",否則就輸出a<=100的話,這麼寫。

int a=100;

if(a>100) printf("a>100");

else printf("a<=100");

或者。int a=100;

a>100?printf("a>100"):printf("a<=100");

請問這個c語言程式函式如何解讀?

4樓:到處參觀

這個函式的功能,就是把乙個陣列的所有元素向後移動,被移出的末位元素,填回到首位。

void move(int* a, int n, int m)

c語言程式解讀

5樓:伽羅林克

t=t*p%c; %號優先順序最高,i = 1 時 t = t * 2 %2009 = 1*2 =2

s=(s+t)%c; (優先順序最高。

以此類推。所以結果如下:

i=1 t=2

j=1 s=2

i=2 t=4j=1 s=6 j=2 s=10

i=3 t=8j=1 s=18 j=2 s=26 j=3 s=34

i=4 t=16j=1 s=50 j=2 s=66 j=3 s=82 j=4 s=98

i=5 t=32j=1 s=130 j=2 s=162 j=3 s=194 j=4 s=226 j=5 s=258

i=6 t=64j=1 s=322 j=2 s=386 j=3 s=450 j=4 s=514 j=5 s=578 j=6 s=642

i=7 t=128

j=1 s=770 j=2 s=898 j=3 s=1026 j=4 s=1154 j=5 s=1282 j=6 s=1410 j=7

s=1538

i=8 t=256

j=1 s=1794 j=2 s=41 j=3 s=297 j=4 s=553 j=5 s=809 j=6 s=1065 j=7 s=1

321 j=8 s=1577

i=9 t=512

j=1 s=80 j=2 s=592 j=3 s=1104 j=4 s=1616 j=5 s=119 j=6 s=631 j=7 s=1

143 j=8 s=1655 j=9 s=158

i=10 t=1024

j=1 s=1182 j=2 s=197 j=3 s=1221 j=4 s=236 j=5 s=1260 j=6 s=275 j=7 s

=1299 j=8 s=314 j=9 s=1338 j=10 s=353

i=11 t=39

j=1 s=392 j=2 s=431 j=3 s=470 j=4 s=509 j=5 s=548 j=6 s=587 j=7 s=62

6 j=8 s=665 j=9 s=704 j=10 s=743 j=11 s=782 782

6樓:苦中作樂香蕉

#include""/printf的標頭檔案void func1(int i);/對於函式1的提前宣告void func2(int i);/對於函式2的提前宣告char st="hello,friend";/定義乙個長度為12的字元陣列。

//c++裡所有的陣列都是從0開始計數的哦void func1(int i)

}void func2(int i)

}main()

/*程式流程:

主函式內呼叫func1(0):

輸出st[0]->h

i<3? (i=0) -i<3

i+2 i=2 呼叫func2(2):

輸出st[2]->l

i<3? (i=2) -i<3

i+2 i=4 呼叫func1(4):

輸出st[4]->o

i<3? (i=4) -i>3

返回!返回!返回!

返回!返回!

返回!返回!

輸出換行。結束程式*/

7樓:聽不清啊

從main()開始執行,呼叫fun1(0)先輸出h,然後i變為2,再呼叫fun2(2)在fun2中,輸出l,然後i變為4,再呼叫fun1(4),輸出o後,直接返回。

全部的輸出就是:hlo

8樓:匿名使用者

先從主函式main開始,i初始值為0,呼叫func1,將i值0作為引數傳入。

在func1中,首先列印st[i],即st[0],即字串的第乙個字元h,向下執行到if條件句,當前i小於3,則執行i+=2, 相當於i=i+2 =>i=0+2 =>i=2,接著呼叫func2函式,此時i為2,作為引數傳入。

在func2中,先列印st[2],即字串中的第三個字元l,接下來判斷if條件,當前i為2小於3滿足條件,執行i+=2得到i為4,接著呼叫func1,將4作為引數傳入。

在func1中,首先列印st[i],即st[4],即字串的第5個字元o, 判斷if條件,發現此時i大於3不滿足條件,不再執行下面的語句。

回到主函式main中,列印換行符後程式結束。

最後結果為hlo

9樓:網友

首先今日入func1()i為0輸出h,再進入func2()i為2,輸出l,最後又進入func1()i為4,輸出o.

C語言程式程式設計,如何編寫C語言程式

把你的思路想好,想要達到什麼樣的功能,思路清晰後就可以一個一個功能的去寫,出錯了不用急,想一下自己錯在什麼地方,好好的看一下 雖然這樣做會花很多 的時間,但是這樣做會提高自己的閱讀分 能力,啊?書上不是有麼 自己學著寫啊 10.include main printf n 如何編寫c語言程式?首先,你...

請問這個遞迴程式為什麼執行出錯,c語言,遞迴法的選擇排序。為什麼執行出錯。。。求賜教

1全部是很奇怪哦,看上去沒什麼問題啊。本身函式的內部變數和引數都很少,棧空間應該問題不大。如果只是單純的改n的大小會引起出錯,那難道是全域性變數的靜態空間問題。改成double讓n的可接受值更小可能就是因為乙個double比乙個int佔用記憶體更多,要不然你改成byte看看是不是可接受的n變大了。你...

C語言程式

void表示返回空 你這函式是要返回值的 所以去掉的時候就會返回 不知lz用的是什麼ide,自定義函式必須指定返回型別 lz的程式沒宣告,不管是否去掉void都會報錯,include stdio.h include string.h void reversal char p,int n 宣告函式re...