C‎ > ‎

演習その一






一文字づつコピー

#include <stdio.h>


int main()
{
    int c;

    while((c = getchar()) !='\n')
    {
        putchar(c);
    }


    return 0;
}


テトリスの枠を表示
#include <stdio.h>

int main()
{
 int i,j;
 int stage[21][12] = {0};
 
 for(i=0;i<21;i++){
for(j=0;j<12;j++){
if(j == 0 || j == 11 )
stage[i][j] = -1;
if(i == 20)
stage[i][j] = -1;
 
}
 }
 
 for(i=0;i<21;i++){
for(j=0;j<12;j++){
if(stage[i][j] == -1)
printf("□");
else
printf(" ");
}
 printf("\n");
 }
 return 0; 
}

横に文字を動かしてみる

#include <stdio.h>
#include <windows.h>

int main()
{
char line[255] = "dokusyu.net dokusyu.net dokusyu.net";

int i , j = 0;
system("cls");

for (j=0;j<50;j++){
    i = 0;

while(line[i] != '\0'){
printf("%c",line[i+j]);
i++;
}
Sleep(50);
system("cls");
}
return 0;
}


Fizz Buzz(3で割り切れたらFizz 5で割り切れたらBuzz 両方で割り切れたらFizzBuzz)

最初に出来たのがこちら
#include <stdio.h>

int main()
{
   int i,j,num1=0;
   printf("number?:");
   scanf("%d",&num1);
   putchar('\n');
   
   for(i=1;i<=num1;i++){
if(i%3 == 0 && i%5 == 0)
printf("FizzBuzz");

   if(i%3 == 0 && i%5 !=0)
printf("Fizz");

if(i%5 == 0 && i%3 !=0)
printf("Buzz");
if(i%3 !=0 && i%5 !=0)
printf("%d",i);
putchar('\t');
   }
return 0;
}



次に出来たのがコレ if文が1つ減った。
#include <stdio.h>

int main()
{
   int i,num1;
   printf("number?:");
   scanf("%d",&num1);
   putchar('\n');
   
   i = 1;
   
   while(i<=num1){
   
if(i%3 !=0 && i%5 !=0)
printf("%d",i);

if(i%3 == 0)
printf("Fizz");

if(i%5 == 0)
printf("Buzz");
putchar('\t');
i++;
   }
return 0;
}

余計なことをやってみた

#include <stdio.h>

int main()
{
   int i,num1,j;
   int fizzbuzz[47] = {1,2,'F','i','z','z',' ',4,'B','u','z','z',' ','F','i','z','z',' ',7,8,'F','i','z','z'
,' ','B','u','z','z',' ',11,'F','i','z','z',' ',13,14,'F','i','z','z','B','u','z','z',' '};
   
   printf("number?:");
   scanf("%d",&num1);
   putchar('\n');
   
  for(j = 0;j<num1;j++){
  
   for(i = 0;i<47;i++){
if(fizzbuzz[i]<16)
printf("%d\t",fizzbuzz[i]+15*j);
else
printf("%c",fizzbuzz[i]);
}
  } 

return 0;
}











































\n
ニューライン 改行


’ ’ 文字コード変換
cはint型 数値で文字を表現する
getchar() :一文字ゲット。文字を表す数値をcに代入する。
putchar(c) :一文字表示する。






i
nt stage[21][12] = {0}; 配列の初期化 = 0 だとエラー