KAIHATSUGIKEN GROUP
********************************************************************************
7 プログラムにおける処理の流れの制御
************
if
************
main()
{
int i; /* intで整数型を宣言 */
i=1;
if(i==0)
{
printf("0です\n");
}
if(i==1)
{
printf("1です\n");
}
}
****
1です
****
main()
{
int i;
i=1;
if(i==0) /* もしi=0なら一つ目の{ }内を実行 */
{
printf("0です\n");
}
if(i==1)
{
printf("1です\n");
}
}
****
main()
{
int i;
i=1;
if(i==0)
{
printf("0です\n");
}
if(i==1) /* もしi=1なら2つ目の{ }内を実行 */
{
printf("1です\n");
}
}
****
main()
{
int i;
i=1;
if(i==0) /* if(i==0)の後に;はつけない */
{
printf("0です\n");
}
if(i==1)
{
printf("1です\n");
}
}
****
main()
{
int i;
i=1;
if(i==0) /* i=0でないので実行されない */
{
printf("0です\n");
}
if(i==1)
{
printf("1です\n");
}
}
****
main()
{
int i;
i=1;
if(i==0)
{
printf("0です\n");
}
if(i==1) /* i=1なので実行される */
{
printf("1です\n");
}
}
****
main()
{
int i;
i=1;
if(i==0)
{
printf("0です\n");
}
if(i==1)
{
printf("1です\n"); /* 1です が表示される */
}
}
************
if else
************
main()
{
int i;
i=1;
if(i==0)
{
printf("i=0\n");
}
else
{
printf("i is no 0\n");
}
}
****
i is not 0
****
main()
{
int i; /* intで整数型を宣言 */
i=1;
if(i==0) /* if文が正しくないときelseの{ }が実行される */
{
printf("i=0\n");
}
else /* if文ではないときという意味 */
{
printf("i is no 0\n");
}
}
****
main()
{
int i;
i=1;
if(i==0)
{
printf("i=0\n");
}
else
{
printf("i is no 0\n"); /* if文が正しくないので実行される */
}
}
************
strcmp if
************
main()
{
static char a[]="ABC";
static char b[]="ABC";
if(strcmp(a,b))
{
printf("different\n");
}
if(!strcmp(a,b))
{
printf("same\n");
}
}
****
same
****
main()
{
static char a[]="ABC";
static char b[]="ABC";
if(strcmp(a,b)) /* 文字列aと文字列bが等しくないときに実行 */
{
printf("different\n");
}
if(!strcmp(a,b))
{
printf("same\n");
}
}
****
main()
{
static char a[]="ABC";
static char b[]="ABC";
if(strcmp(a,b))
{
printf("different\n");
}
if(!strcmp(a,b)) /* 文字列aと文字列bが等しいときに実行 !に注意 */
{
printf("same\n");
}
}
****
main()
{
static char a[]="ABC";
static char b[]="ABC";
if(strcmp(a,b))
{
printf("different\n");
}
if(!strcmp(a,b))
{
printf("same\n"); /* 実行される */
}
}
************
switch
************
main()
{
int i;
i=1;
switch(i)
{
case 0;
printf("i=0\n");
break;
case 1;
printf("i=1\n");
break;
case 2;
printf("i=2\n");
break;
}
}
****
i=1
****
main()
{
int i; /* intで整数型を宣言 */
i=1; /* iの代入数字は1である */
switch(i) /* ()内の変数の値によって実行場所が決定する */
{
case 0;
printf("i=0\n");
break;
case 1;
printf("i=1\n");
break;
case 2;
printf("i=2\n");
break;
}
}
****
main()
{
int i;
i=1;
switch(i)
{
case 0; /* i=0の場合実行 */
printf("i=0\n");
break;
case 1; /* i=1の場合実行 */
printf("i=1\n");
break;
case 2; /* i=2の場合実行 */
printf("i=2\n");
break;
}
}
****
main()
{
int i;
i=1;
switch(i)
{
case 0;
printf("i=0\n");
break;
case 1;
printf("i=1\n"); /* i=1なので実行される */
break;
case 2;
printf("i=2\n");
break;
}
}
****
main()
{
int i;
i=1;
switch(i)
{
case 0;
printf("i=0\n");
break;
case 1;
printf("i=1\n");
break; /* breakにより{}内から脱出する */
case 2;
printf("i=2\n");
break;
}
}
************
for loop
************
main()
{
int i;
int a[3];
for(i=0;i<3;i++)
{
a[i]=10*i;
}
printf("%d,%d,%d\n",a[0],a[1],a[2]);
}
****
0,10,20
****
main()
{
int i; /* int型の変数を準備 */
int a[3]; /* 3個のaの配列がある */
for(i=0;i<3;i++)
{
a[i]=10*i;
}
printf("%d,%d,%d\n",a[0],a[1],a[2]);
}
****
main()
{
int i;
int a[3];
for(i=0;i<3;i++) /* ()内の条件で{}内の処理を繰り返す */
{
a[i]=10*i;
}
printf("%d,%d,%d\n",a[0],a[1],a[2]);
}
****
main()
{
int i;
int a[3];
for(i=0;i<3;i++) /* 初期値を0に設定 */
{
a[i]=10*i;
}
printf("%d,%d,%d\n",a[0],a[1],a[2]);
}
****
main()
{
int i;
int a[3];
for(i=0;i<3;i++) /* i<3の場合まで繰り返し */
{
a[i]=10*i;
}
printf("%d,%d,%d\n",a[0],a[1],a[2]);
}
****
main()
{
int i;
int a[3];
for(i=0;i<3;i++) /* 繰り返しが終わる度に1つずつ増やす */
{
a[i]=10*i;
}
printf("%d,%d,%d\n",a[0],a[1],a[2]);
}
****
main()
{
int i;
int a[3];
for(i=0;i<3;i++) /* 初期値0から1,2と増える */
{
a[i]=10*i;
}
printf("%d,%d,%d\n",a[0],a[1],a[2]);
}
****
main()
{
int i;
int a[3];
for(i=0;i<3;i++) /* i=0,1,2の時に実行 */
{
a[i]=10*i;
}
printf("%d,%d,%d\n",a[0],a[1],a[2]);
}
****
main()
{
int i;
int a[3];
for(i=0;i<3;i++) /* i=3になったら{}内を抜ける */
{
a[i]=10*i;
}
printf("%d,%d,%d\n",a[0],a[1],a[2]);
}
****
main()
{
int i;
int a[3];
for(i=0;i<3;i++)
{
a[i]=10*i;
}
printf("%d,%d,%d\n",a[0],a[1],a[2]); /* printfを実行 */
}
************
for loop break
************
main()
{
int i;
int a;
a=0;
for(i=0;i<10;i++)
{
a=a+1;
if(a==5)
break;
}
printf("%d\n",a);
}
****
5
****
main()
{
int i; /* intで変数を宣言 */
int a;
a=0; /* 初期値をa=0に設定 */
for(i=0;i<10;i++) /* "i"も初期値をi=0に設定 */
{
a=a+1;
if(a==5)
break;
}
printf("%d\n",a);
}
****
main()
{
int i;
int a;
a=0;
for(i=0;i<10;i++) /* 処理が繰り返されるごとに1つずつ増加 */
{
a=a+1;
if(a==5)
break;
}
printf("%d\n",a);
}
****
main()
{
int i;
int a;
a=0;
for(i=0;i<10;i++) /* "i"がi<10になるまで繰り返す */
{
a=a+1;
if(a==5) /*"i"の条件中 a==5になったらforloopを脱出 */
break;
}
printf("%d\n",a);
}
****
main()
{
int i;
int a;
a=0;
for(i=0;i<10;i++)
{
a=a+1;
if(a==5)
break;
}
printf("%d\n",a); /* a=5なので5を表示 */
}
************
for loop continue
************
main()
{
int i;
int a,b;
a=b=0;
for(i=0;i<10;i++)
{
a=a+1;
if(i>=5)
continue;
b=b+1;
}
printf("%d,%d\n",a,b);
}
****
10,5
****
main()
{
int i; /* intで変数は整数を宣言 */
int a,b;
a=b=0;
for(i=0;i<10;i++) /* "i"は一つずつ加算される */
{
a=a+1; /* aとbの初期値はともに"0" */
if(i>=5)
continue;
b=b+1;
}
printf("%d,%d\n",a,b);
}
****
main()
{
int i;
int a,b;
a=b=0;
for(i=0;i<10;i++)
{
a=a+1;
if(i>=5) /* 5以上からは下には行かない */
continue;/* continueは処理を中断してforloopの最初に戻る */
b=b+1;
}
printf("%d,%d\n",a,b);
}
****
main()
{
int i;
int a,b;
a=b=0;
for(i=0;i<10;i++)
{
a=a+1; /* aは10回繰り返される */
if(i>=5)
continue;
b=b+1; /* bは5回繰り返される */
}
printf("%d,%d\n",a,b);
}
************
while loop
************
main()
{
int i;
int a;
a=0;
i=0;
while(i<10)
{
a=a+10;
i=++;
}
printf("%d\n",a);
}
****
100
****
main()
{
int i; /* int型変数を準備 */
int a; /* int型変数を準備 */
a=0;
i=0;
while(i<10)
{
a=a+10;
i=++;
}
printf("%d\n",a);
}
****
main()
{
int i;
int a;
a=0; /* a,bともに初期値は "0" */
i=0; /* whileloopの前で初期値を設定 */
while(i<10)
{
a=a+10;
i=++;
}
printf("%d\n",a);
}
****
main()
{
int i;
int a;
a=0;
i=0;
while(i<10) /* ()内の条件が成立する間は{}内の処理を繰り返す */
{
a=a+10; /* 変化するaに10ずつ加算される */
i=++;
}
printf("%d\n",a);
}
****
main()
{
int i;
int a;
a=0;
i=0;
while(i<10)
{
a=a+10; /* 10,20,30,40,50,60,70,80,90,100 となる */
i=++;
}
printf("%d\n",a);
}
****
main()
{
int i;
int a;
a=0;
i=0;
while(i<10)
{
a=a+10;
i=++;
} /* i=10の段階でwhileloopを脱出する */
printf("%d\n",a); /* 脱出してprintfへ */
}