For Next迴圈語句裡的概念不太清楚,類似step,for,to,next是什麼意思,怎麼用,求舉例

2021-08-14 09:09:20 字數 3439 閱讀 4933

1樓:匿名使用者

是asp還是vb呀?

step 步長

for i=1 to 10

next

指從1到10迴圈10次

for i=1 to 10 step 2

next

指從1迴圈到10,步長是2,這裡的i的值會是1+2+2+2+2一直加到i大於10退出。

2樓:

for--語句--next構成一個迴圈執行結構,告訴計算機迴圈(重複)執行語句塊,直到某些條件讓它結束。

其中for 表示迴圈頭,要寫在開頭。意思是告訴計算機下面的語句我要開始迴圈了,next表示迴圈尾。並不是表示迴圈結束,而是告訴計算機語句執行到此要回頭重新開始了。

但是迴圈幾次呢?這個就要用迴圈控制語句。

for後面一般會跟迴圈次數。。結構是 for i = x to y step z ~~,其中i是個變數,變數的初始值是

x,,step學名叫做步長,表示一次迴圈後,i增加z...如果不寫step z..系統預設 +1 ,,就是迴圈1次,i的值增加1,若原來i是1,迴圈1次後就變成2。

to表示i的值最多能增加到y,,,超過y,語句就不再迴圈了~~

解釋一下 ,vb中的for next 迴圈語句

3樓:玫瑰為你盛開

x=0有沒有,結果來都一樣源,之所以會如此,是因為數值變數的初始值都預設為0,如果是第一次使用,要不要寫x=0無所謂。不過,寫上是安全一點,而且也便於看程式。

在你這個例子裡,x=0只在y=1時被用了一下,以後x就不等於0了。

4樓:匿名使用者

next y 如果y不大於100則y自加1 x=0 沒有 的話 結果是一樣的,因x定義時預設為0

5樓:匿名使用者

拿一個來簡單的例子來自解釋:

s=0for i=1 to 10

s=s+i

next

print s

1、for 語句包含了迴圈變數的開始值和結束值;

2、next相當於迴圈變數的變化;

a、i 的初始值是 1 最大邊界是10,包含10(相當於<=10);b、next 也可寫作 next i ,相當與增加1;

for i=1 to 10 step 1

意思就是從1到10,每次增1,而

for i=10 to 1 step -0.1意思就是從10到1每次減少0.1。

相信大家已經看明白了step和next是向關聯的,但是為何我們的例子中沒有step值,為何要加1呢,這是一個慣例:如果沒有生命step的值,那麼next就等同於變數加1的效果。

6樓:

第一個x=0只用一次,然後程式進入for迴圈,next y的意思的下一個y,其實不要y也可以。

7樓:奪命狂瀾

x= 0 '將x的初值置成0

for y = 1 to 100 '做迴圈,y從1到100x=x+y '這是累加,將x與y相加

next y '這段**是把1到100的數加起來

8樓:偉暉校夢山

拿一個簡單的例子來**解釋:

bais=0

du for

i=1to

10zhis=s+i

next

print

s1、for

語句包含了迴圈變數的dao

開始值和結束值;

2、next相當於迴圈變數的變化;

a、i的初始值是

1最大邊界是10,包含10(相當於<=10);b、next也可寫作

next

i,相當與增加1;

fori=1

to10

step

1意思就是從1到10,每次增1,而

fori=10to1

step

-0.1

意思就是從10到1每次減少0.1。

相信大家已經看明白了step和next是向關聯的,但是為何我們的例子中沒有step值,為何要加1呢,這是一個慣例:如果沒有生命step的值,那麼next就等同於變數加1的效果。

關於vb 中 for next語句中迴圈變數與step的問題

9樓:匿名使用者

哦,這個結果我已經執行過了!

都是11!沒什麼區別!

從0-1,每次

增加0.1,迴圈11次。所回以累加後和為答11從0-0.1,每次增加0.01,迴圈11次,所以累加後和也為11沒什麼區別!!!

下面是我執行的**

private sub command1_click()n = 0

for i = 0 to 0.1 step 0.01n = n + 1

next

print "n=" & n

k = 0

for j = 0 to 0.1 step 0.01k = k + 1

next

print "k=" & k

end sub

剛才又把i的變數定義為整型,單精度,雙精度。分別實驗了一下,用msgbox嘗試輸出了每次迴圈中i與n的結果,發現當單精度的時候,i=0.1,....

0.7,0.800001,0.

90001,所以導致最後結果就變成10次了!

因此懷疑是單精度的時候,在0.7+0.1的過程中,導致結果運算出錯。就導致後面一系列的錯誤了。。

如果你還想查具體原因,參照單精度的範圍,自己再仔細研究了。

10樓:

這是「精度」的問題,

這個 for i = 0 to 0.1 step 0.01 的i值遠遠超過了single的範圍,先看看single與double的區別你就會明專白為什麼:

single(單屬精度浮點型)變數儲存為 ieee 32 位(4 個位元組)浮點數值的形式,

它的範圍在負數的時候是從 -3.402823e38 到 -1.401298e-45,

而在正數的時候是從 1.401298e-45 到 3.402823e38。single 的型別宣告字元為感嘆號 (!)。

double(雙精度浮點型)變數儲存為 ieee 64 位(8 個位元組)浮點數值的形式,

它的範圍在負數的時候是從 -1.79769313486232e308 到 -4.94065645841247e-324,

而正數的時候是從 4.94065645841247e-324 到 1.79769313486232e308。double 的型別宣告字元是數字符號 (#)。

11樓:河中的沙粒

single 為單精度浮點型,由於你用的是小數,在記憶體計數器中0.01和0.1的差別不只是10倍的版關係,具體你可權以再百科中看一下他們在記憶體中的儲存數是多少,所以你如果用single 型別的話就不可以用小數來區別這兩種演算法,如果想用小數區分的話推薦你用其他型別

微控制器程式的工作迴圈過程和迴圈語句while(1)的作用

這個while 1 迴圈並不能阻止程式的跑飛 應該用看門狗防止程式跑飛 不過這樣寫也是很正確的做法,就是讓程式一直在執行著 原地迴圈 這裡的while 1 並不是防止程式 跑飛 的,而是防止main 返回。在嵌入式中main是不能返回的。不同的c語言實現的微控制器初始化 會有不同的表現,有的是在ca...

用do while語句構成的迴圈,只有在while後的表示式

我想你的意思理解錯了,d的意思是 針對在while後的表示式為零時結束迴圈,不是在while後的表示式為1時結束迴圈,而不是問你是否只有這一種方式結束迴圈。d 用do while語句構成的迴圈,只有在while後的表示式為零時結束迴圈 break 是可以退出迴圈,但不是唯一的 break是跳出迴圈,...

matlab,怎麼把迴圈語句中的多條曲線畫在一副圖中

x linspace pi,pi hold on for n 1 3 plot x,sin n x end 怎樣用matlab將幾條曲線畫在一個圖上 fs 100 t 1 1 fs 1 y1 sin 2 pi t y2 cos 2 pi t plot y1 hold on plot y2,r 這樣兩...