c語言簡單習題,C語言簡單習題 auto int b 0 。。。。

2021-08-14 06:08:01 字數 1533 閱讀 1791

1樓:匿名使用者

auto宣告後,每次呼叫這個函式都會將這個b重定義為0;

而進行stable宣告後,c將不會被改變,所以值是不同的;

第一次迴圈:

a=5(這個是固定的);

b=0+1=1(自增運算子);

c=1+3=4;

返回乙個值並輸出a+b+c=10;

第二次迴圈:

a=5;

b=0+1=2(在這裡重置);

c=4+3=7(而它並沒有);

a+b+c=13;

第三次迴圈也是一樣的,b重置,c加3,而a為定值5,所以三次輸出相差3,就是c的三次加3,和b無關。

純手打,求採納,有問題,繼續問

2樓:金色潛鳥

因為 static int c=1 ; c 的值 相當全域性量,函式退出後,它的當前值繼續有效並保留著。

所以:(迴圈1):

b=0; b=b+1=1;

c=1; c=c+3=4

a+b+c=5+1+4

(迴圈2):

c=4;c=c+3=7;

a+b+c=5+1+7=13;

(迴圈3):

c=7;c=c+3=10

a+b+c=5+1+10=16

==輸出:

10 13 16

auto在c語言中的意義

3樓:『戀愛領域

c語言中提供了儲存說明符auto,register,extern,static說明的四種儲存類別。四種儲存類別說明符有兩種儲存期:自動儲存期和靜態儲存期。

其中auto和register對應自動儲存期。具有自動儲存期的變數在進入宣告該變數的程式塊是被建立,它在該程式塊活動時存在,退出該程式塊時撤銷。

在函式內部定義的變數成為區域性變數。在某些c語言教材中,區域性變數稱為自動變數,這就與使用可選關鍵字a u t o定義區域性變數這一作法保持一致。區域性變數僅由其被定義的模組內部的語句所訪問。

換言之,區域性變數在自己的**模組之外是不可知的。切記:模組以左花

括號開始,以右花括號結束。

對於區域性變數,要了解的最重要的東西是:它們僅存在於被定義的當前執行**塊中,即區域性變數在進入模組時生成,在退出模組時消亡。

定義區域性變數的最常見的**塊是函式。

整數變數x被定義了兩次,一次在func1()中,一次在func2()中。func1()和func2()中的x互不相關。其原因是每個x作為區域性變數僅在被定義的塊內可知。

語言中包括了關鍵字auto,它可用於定義區域性變數。但自從所有的非全域性變數的預設值假定為auto以來,auto就幾乎很少使用了

4樓:匿名使用者

你不妨把他認為是沒含義!

5樓:匿名使用者

auto 表示自動儲存型別

其實現在都不用打auto, 編譯器預設為auto的

不信可以把auto刪除試試

6樓:匿名使用者

auto 表示自動儲存型別

C語言簡單的練習題,C語言簡單練習題

該表示式的值為 7 逗號表示式的值就是最後乙個式子的值 逗號表示式的運算順序是從左到右 變數x的值是 2 x這個變數初始賦值為1 然後經過x 自身加了1 所以變成2了 x 5並沒有給x賦值 變數y的值是 3 這個幾乎不用問肯定是3啦 y 3 如果y不等於3 那就見鬼了 在c語言中逗號 也是一種運算子...

c語言函式習題

1 函式呼叫 strcat strcpy str1,str2 str3 的功能是 c 將串str2複製到串str1中後再將串str3連線到串str1之後 2 若有以下呼叫語句,則正確的fun函式首部是 main b void fun float a,int x 3 有如下程式 int func in...

c語言習題請高手幫忙解答。急,C語言習題請高手幫忙解答。急。

1.b2.c 3.a4.a 5.c6.無解 7.a8.d 9.d10.b x沒有定義 11.i 5,j 4,k 6 12.2048 13.看不懂!14.4 15.s k k 這些都很簡單,但別人給的答案不一定準確 真是懷疑。是入學考試還是畢業考試?是入學考試還是畢業考試?c語言習題請高手幫忙解答,急...