for循环是先执行循环体语句,后判断表达式吗?
不是,for循环是先判断表达式,然后执行循环体语句。一般形式“for(表达式1;表达式2;表达式3){循环体}”;先执行“表达式1”;再执行“表达式2”,如果它的值为真(非0),则执行循环体,否则结束循环;执行完循环体后再执行“表达式3”。
for 循环的一般形式为:
for(表达式1; 表达式2; 表达式3){ 语句块 }
它的运行过程为:
1) 先执行“表达式1”。
2) 再执行“表达式2”,如果它的值为真(非0),则执行循环体,否则结束循环。
3) 执行完循环体后再执行“表达式3”。
4) 重复执行步骤 2) 和 3),直到“表达式2”的值为假,就结束循环。
上面的步骤中,2) 和 3) 是一次循环,会重复执行,for 语句的主要作用就是不断执行步骤 2) 和 3)。
“表达式1”仅在第一次循环时执行,以后都不会再执行,可以认为这是一个初始化语句。“表达式2”一般是一个关系表达式,决定了是否还要继续下次循环,称为“循环条件”。“表达式3”很多情况下是一个带有自增或自减操作的表达式,以使循环条件逐渐变得“不成立”。
for循环的执行过程可用下图表示:
我们来分析一下“计算从1加到100的和”的代码:
#include <stdio.h> int main(){ int i, sum=0; for(i=1; i<=100; i++){ sum+=i; } printf("%d\n",sum); return 0; }
运行结果:
5050
代码分析:
1) 执行到 for 语句时,先给 i 赋初值1,判断 i<=100 是否成立;因为此时 i=1,i<=100 成立,所以执行循环体。循环体执行结束后(sum的值为1),再计算 i++。
2) 第二次循环时,i 的值为2,i<=100 成立,继续执行循环体。循环体执行结束后(sum的值为3),再计算 i++。
3) 重复执行步骤 2),直到第101次循环,此时 i 的值为101,i<=100 不成立,所以结束循环。
由此我们可以总结出for循环的一般形式:
for(初始化语句; 循环条件; 自增或自减){ 语句块 }
for循环中的三个表达式
for 循环中的“表达式1(初始化条件)”、“表达式2(循环条件)”和“表达式3(自增或自减)”都是可选项,都可以省略(但分号;
必须保留)。
1) 修改“从1加到100的和”的代码,省略“表达式1(初始化条件)”:
int i = 1, sum = 0; for( ; i<=100; i++){ sum+=i; }
可以看到,将i=1
移到了 for 循环的外面。
2) 省略了“表达式2(循环条件)”,如果不做其它处理就会成为死循环。例如:
for(i=1; ; i++) sum=sum+i;
相当于:
i=1; while(1){ sum=sum+i; i++; }
所谓死循环,就是循环条件永远成立,循环会一直进行下去,永不结束。死循环对程序的危害很大,一定要避免。
3) 省略了“表达式3(自增或自减)”,就不会修改“表达式2(循环条件)”中的变量,这时可在循环体中加入修改变量的语句。例如:
for( i=1; i<=100; ){ sum=sum+i; i++; }
4) 省略了“表达式1(初始化语句)”和“表达式3(自增或自减)”。例如:
for( ; i<=100 ; ){ sum=sum+i; i++; }
相当于:
while(i<=100){ sum=sum+i; i++; }
5) 3个表达式可以同时省略。例如:
for( ; ; ) 语句
相当于:
while(1) 语句
6) “表达式1”可以是初始化语句,也可以是其他语句。例如:
for( sum=0; i<=100; i++ ) sum=sum+i;
7) “表达式1”和“表达式3”可以是一个简单表达式也可以是逗号表达式。
for( sum=0,i=1; i<=100; i++ ) sum=sum+i;
或:
for( i=0,j=100; i<=100; i++,j-- ) k=i+j;
8) “表达式2”一般是关系表达式或逻辑表达式,但也可是数值或字符,只要其值非零,就执行循环体。例如:
for( i=0; (c=getchar())!='\n'; i+=c );
又如:
for( ; (c=getchar())!='\n' ; ) printf("%c",c);
相关推荐:《c语言教程》
Atas ialah kandungan terperinci for循环是先执行循环体语句,后判断表达式吗?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Langkah pelaksanaan: 1. Gunakan julat kawalan pernyataan untuk merentasi nombor dari 1 hingga 100, sintaksnya ialah "untuk ($i = 1; $i <= 100; $i++) {kod badan gelung}"; badan gelung, Hanya gunakan pernyataan if dan operator "%" untuk mendapatkan dan mengeluarkan nombor ganjil Sintaksnya ialah "if($i % 2 != 0){echo $i."

Urutan pelaksanaan: 1. Jalankan "ungkapan permulaan"; 2. Laksanakan "ungkapan penghakiman bersyarat". body, jalankan "Ungkapan kemas kini pembolehubah"; 4. Selepas pembolehubah dikemas kini, masukkan gelung seterusnya sehingga nilai penghakiman syarat adalah palsu, menamatkan gelung.

MySQL tidak mempunyai gelung for. MySQL tidak menyokong penyataan gelung Ia hanya menyokong tiga penyataan gelung: WHILE, REPEAT dan LOOP menyediakan penyataan gelung, membolehkan anda melaksanakan blok kod SQL berulang kali.

Cara menggunakan gelung for dalam Python Python ialah bahasa pengaturcaraan yang ringkas dan mudah digunakan, dan gelung for ialah salah satu alatan yang paling biasa digunakan. Dengan menggunakan untuk gelung, kami boleh menggelung melalui satu siri data, melaksanakan pemprosesan dan operasi yang berkesan serta meningkatkan kecekapan kod. Di bawah, saya akan memperkenalkan cara menggunakan gelung for dalam Python melalui contoh kod tertentu. Asas untuk sintaks gelung Dalam Python, sintaks a for gelung adalah seperti berikut: untuk pembolehubah dalam objek boleh lelaran:

Dalam artikel sebelumnya "JS Loop Learning: The Use of While Loop Statements (Contoh Terperinci)", kami mempelajari secara ringkas tentang while loops dan do while loops, dan hari ini kami akan memperkenalkan satu lagi gelung - penyataan untuk gelung berguna kepada semua orang.

Kami tahu bahawa sintaks Go adalah agak ringkas. Ia tidak menyediakan sintaks kawalan gelung seperti while, do...while, dsb. disokong oleh C, tetapi hanya mengekalkan satu pernyataan, gelung for.

Tajuk: Cara menggunakan untuk gelung untuk melaksanakan operasi flip dalam bahasa Go Dalam bahasa Go, anda boleh membalikkan struktur data dengan mudah seperti tatasusunan dan kepingan dengan menggunakan untuk gelung. Dalam artikel ini, kami akan memperkenalkan cara menggunakan gelung untuk membalik tatasusunan dan kepingan, dan memberikan contoh kod khusus. Operasi membalikkan tatasusunan Mula-mula, mari kita lihat cara menyelak tatasusunan melalui gelung for. Kami mentakrifkan tatasusunan yang mengandungi elemen integer dan membalikkannya menggunakan gelung for. packagemain

Tatasusunan ialah sekumpulan item data berkaitan yang disimpan di bawah satu nama. Contohnya intStudent[30];//student ialah nama tatasusunan, himpunan 30 item data yang mengandungi nama pembolehubah tunggal Carian operasi tatasusunan - digunakan untuk mencari sama ada unsur tertentu wujud pengisihan - ia membantu menyusun elemen dalam tatasusunan dalam tertib menaik atau Susun mengikut tertib menurun. Traversal - Ia memproses setiap elemen dalam tatasusunan secara berurutan. Sisipan - Ia membantu untuk memasukkan elemen dalam tatasusunan. Padam - Ia membantu dalam memadam elemen daripada tatasusunan. elemen dalam tatasusunan. Logik mencari nombor genap dalam tatasusunan adalah seperti berikut - for(i=0;i<size;i++){ if(a[i]%2==0){
