第12講 for文以外の様々なループ文の学習

第7話 do〜while文
do〜while文は、次のように使います。
  do{
      ・
      ・
  }while(条件式)
のように使います。
while文との違いは、
条件の判定が後からなされることです。
後から判定する場合と前に判定する場合に違いがあるのでしょうか。
試しに、次の2つのコードを実行させてみて下さい。
コード1
#include<stdio.h>
int f();
int main(){
  printf("%d\n",f());
  printf("プロジェクト終了\n");
  return(0);
}
int f(){
  int w,i;
  w=0;
  i=1;
  while(i<=10){
    w+=i;
    i++;
  }
  return(w);
}
コード1

コード2
#include<stdio.h>
int f();
int main(){
  printf("%d\n",f());
  printf("プロジェクト終了\n");
  return(0);
}
int f(){
  int w,i;
  w=0;
  i=1;
  do{
    w+=i;
    i++;
  }while(i<=10);
  return(w);
}
コード2


実行結果
55
プロジェクト終了

残念ながら結果は同じです。
ではどのような場合に違いが起きるのでしょうか。

今度は違いが起きる場合を示してみましょう。
コード3
#include<stdio.h>
int f();
int main(){
  printf("%d\n",f());
  printf("プロジェクト終了\n");
  return(0);
}
int f(){
  int w,i;
  w=0;
  i=20;
  while(i<=10){
    w+=i;
    i++;
  }
  return(w);
}
コード3

コード4
#include<stdio.h>
int f();
int main(){
  printf("%d\n",f());
  printf("プロジェクト終了\n");
  return(0);
}
int f(){
  int w,i;
  w=0;
  i=20;
  do{
    w+=i;
    i++;
  }while(i<=10);
  return(w);
}
コード4

コード3の実行画面
0
プロジェクト終了

コード4の実行画面
20
プロジェクト終了

なぜ違いが生じたのでしょうか。

第6話へ 第8話へ

a


初心者のための excel 2016 マクロ VBA 入門講義 基礎から応用まで
vc++ c言語 c++ 入門 初心者 基礎から応用まで
eclipse c++ 入門
魔方陣 数独で学ぶ VBA 入門

数独のシンプルな解き方・簡単な解法の研究
VB講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座

初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 C++ 入門 基礎から応用まで第1部
eclipse java 入門
java 入門 サイト 基礎から応用まで
本サイトトップへ