for語句可以完全代替if、while、do-while語句嗎
在相同效率的前提下。
for和while可以實現if for (;a > b;) { 。 break; } while (a > b) { 。
break; } 但是if。else貌似做不出來。
循環語句可以完全互相替代。 因為for(;;) while(1) do。
while(1)是等價的 里面利用if break和continue就可以實現各種效果并且效率相同。 比如for(int i = 0; i < 5; i++) {。
}就可以寫作 { int i = 0; while(i < 5) { 。 i++; } } 而 do { 。
}while(a < b)就是 for (;;) { 。 if (!(a < b)) break; }當然以上的前提都是不可以用goto,否則只用if和goto就可以做出所有流程效果。
在c語言中,三大語句if,while,do while的區別與共通之處有哪些?誰知道
共通之處在于都會進行條件判斷。
區別如下:if語句是判斷語句,只執行一次,例如 :if(a>0) b=1; 當a為正數時,才執行b=1;若a不是正數,那么b=1;就不會運行到。之后if語句就結束了,只判斷一次a>0這個條件while是循環語句,反復執行直到其循環條件不滿足為止。
例如:while(a>0){ b=b+1; a=a-1;}當a為正數時,就執行b=b+1;a=a-1;之后會繼續回到a>0這個條件的判斷,如果a還是正數,就再次執行b=b+1;a=a-1;如此不斷重復地判斷a>0這個條件,直到這個條件不成立為止,循環才結束。如果一開始a就不是正數,那么b=b+1;a=a-1;就一次都不會運行到。
do while也是循環語句,反復執行直到其循環條件不滿足為止。跟while語句的區別在于,do while會先執行一次循環體里的語句。
例如:do{ b=b+1; a=a-1;}while(a>0);一開始就先執行一次b=b+1;a=a-1;之后才去判斷a>0這個條件,成立的話就再次執行b=b+1;a=a-1;如此不斷重復地判斷a>0這個條件,直到這個條件不成立為止,循環才結束。如果一開始a就不是正數,那么b=b+1;a=a-1;還是能被執行一次。
if else while do while 怎么用
if-else語句和switch語句都是選擇、判斷語句,if-else的語句形式是: if(表達式){
//語句1
}else{
//語句2}
switch結構為:
switch(表達式){
case 常量表達式1:語句1
case 常量表達式2:語句2
case 常量表達式n:語句n
default:語句n+1
}
比較
相同點:
不論if-else還是switch,它們都可以實現多重分支結構;
不同點:
switch:只能處理等值條件判斷,且條件是整形變量或字符變量的等值判斷;
if-else:吃力在else部分還包含其他if結構,特別適合某個變量處于某個區間是的情況。
我們把重復做某件事的情況稱為循環,不停的中某件事時就要用到循環語句while和do-while。while的特點是先判斷,在執行。語句結構為:
while(循環條件){
循環操作}
while的步驟有:
1、分析循環條件和循環操作;
2、套用while語句;
3、檢查循環是否能夠推出。
do-while語句就與while語句相反,它先執行,再判斷。語句結構為:
do{循環操作
}while (循環條件)
比較
相同點:
它們都可以實現循環結構;
不同點:
while:初始情況不滿足條件時,while一次都不會執行;
do-while:do-while循環不管任何情況下至少執行一次。
while和 do while語句有什么區別
1:for循環
for語句的格式為:
for (初始化語句; 條件語句; 控制語句)
{
語句1 ;
語句2 ;
。.
語句n ;
}
for 語句的執行順序是:首先執行“初始化語句”;然后測試“條件語句”;若條件成立,則執行語句1到語句n;然后執行“控制”語句;接著再測試條件語句是否成立,如果成立則重復執行以上過程,直至條件不成立時才結束for循環。如:
for(i=0;i<10;i++)。。;
int i,a[]=new int[10];
for (i=0,i<10;i++) a[i]= 0;
這段代碼把整型數組a中的所有元素都賦成0。
你可以在for循環的頭部說明你的變量,而且最后一個表達式可以省略,不過要確定在語句中對變量的值有所改變,如:
for(int i=0;i<=10;) i+=i;
for循環中,“初始化語句”、“條件語句”和“控制語句”都可以省略,但是其間的分號不能省略。例如:
int i =0 ;
for (; ; ;)
{
if i>10 break ;
i = i +1 ;
}
for循環中省略“條件語句”時,在for語句{}中必須包換轉句語句控制程序在某個條件滿足時跳出for循環,否則將形成死循環
2:while循環
while循環和for循環類似,其格式為:
while (條件語句)
{
語句1 ;
語句2 ;
。.
語句n ;
}
執行while時,先測試“條件語句”,如果條件成立,則執行語句1到語句n,直至條件不成立時調處循環。
int i=0 ;
while (i<10)
{
i++ ;
*n("Hey!.get me out of here!:);
}
3:do 。 while 循環
do 。 while 循環語句的格式為:
do
{
語句1 ;
語句2 ;
。.
語句n ;
}
while (條件語句) ;
do 。while 語句的功能是首先執行語句1到語句n,然后進行條件測試,如果條件成立,則繼續執行語句1到語句n,否這跳出循環。如:
boolean test=false;
do
{
。。
}
while(test);
這種控制并不是很常用,但有時卻非常重要,使用時注意結尾處while語句后的分號。
1, 分別用三種循環語句(while語句,do-while語句,for語句),實現
3個程序都經過測試正確,可拷貝。
while語句
#include <stdio.h>
int main()
{
int i = 200, sum = 0;
while(i <= 1000)
{
if (i % 3 == 0)
sum += i;
i += 5;//被5整除,所以每次+5
}
printf("sum = %d", sum);
}do-while語句:
#include <stdio.h>
int main()
{
int i = 200, sum = 0;
do
{
if (i % 3 == 0)
sum += i;
i += 5;//被5整除,所以每次+5
}while(i <= 1000);
printf("sum = %d", sum);
}for語句:
#include <stdio.h>
int main()
{
int i = 200, sum = 0;
for (i = 200; i <= 1000; i += 5)//被5整除,所以每次+5
{
if (i % 3 == 0)
sum += i;
}
printf("sum = %d", sum);
}
跪求宏程序WHILE[條件語句]DO, 循環語句 Z-20.
你沒說清楚、隨便舉個例子了!#1=200 #2=500 WHILE (#1LE#2)DO 1 #3=200 #4=500 WHILE(#3LE#4)DO 2 G90 G10 G0 L2 P1 X=#3 Y=#1 G54 G90 G0 X0 Y0 M3 S1000 G43 G0 Z20 H1 G73 G98 R3 Q5 Z-20 F200 。
G80 #3=#3+200 END 2 #1=#1+100 END 1 M5 M9 G91 G30 Z0 M30。
關于C語言中的do while語句與while語句
相同點:
1,while語句和do while 語句都是循環語句。
2,while括號里面的條件必須成立才能循環。do while也一樣。
不同點:
例:
1,形式上的不同
while(條件)
{
語句;
}
do
{
語句;
}while(條件);
2,當括號里的條件一開始就成立時,while和do while的循環次數是相同的。
而當括號里的條件一開始就不成立時,while里面的語句是不會執行的。而do while會執行一次。
C語言中while語句和do while語句具體是如何循環的
while()是先判斷括號里面的是否成立,成立執行方法體內的語句。
do while()是先執行方法體內語句再判斷,do while()至少執行一次。
#include<stdio.h>
void main(){
int sum=0,i;
scanf("%d",&i);
while(i<=10){
sum=sum+i;
i++;
}
printf("sum=%d\n",sum);
}
運行輸入1
運行結果:sum=55
再運行一次輸入11
運行結果:sum=0
#include<stdio.h>
void main(){
int sum=0,i;
scanf("%d",&i);
do{
sum=sum+i;
i++;
}
while(i<=10);
printf("sum=%d\n",sum);
}
運行輸入1
輸出結果:sum=55
再運行一次輸入11
輸出結果:sum=11
轉載請注明出處華閱文章網 » whileifdo語句