プログラミングがさっぱりわからない、C言語がさっぱりわからない。そんなときは、自分がどこでつまづいているか確認してみましょう。どれも授業や参考書の序盤で扱う内容です。序盤の基礎的なところでつまづいているとこれからの学習の妨げにもなります。しっかりと基礎は押さえておきましょう。
- コンパイルが通らない、なにかエラーが出る場合
- HelloWorldが出来ない
- if文などの条件分岐がわからない
- for文やwhile文などの繰り返し処理がわからない
- 配列がわからない
- ポインタがわからない
- おまけ:おすすめの勉強法や参考書など
- ちゃんとエラーを追うことがプログラミング力をつけるうえで大切
コンパイルが通らない、なにかエラーが出る場合
エラーの文章が出ているはずです。たいていの場合、何行目でどんなエラーが出ているか出力されています。 このエラー文を読むことがプログラミング上達の第一歩です。
HelloWorldが出来ない
HelloWorldは、プログラミングを勉強する際に誰もがはじめに記述するプログラムでしょう。コンパイルや実行環境でつまづいている人は、paiza.ioなどのブラウザで実行できるものを試してみるとよいでしょう。
#include <stdio.h>
int main(int argc, char *args[])
{
printf("Hello, world!\n");
return 0;
}
上記のソースをコピーして貼り付けすれば「Hello, world!」という文字が出力されるはずです。
printf("Hello, world!\n");
printfのカッコ内のHello, world!の部分を書き換えれば任意の文字を出力することが可能です。それ以外の文字は、まずは気にせず次のステップに進みましょう。
if文などの条件分岐がわからない
次に多くの方がつまづくポイントは、if文やswitch文などの条件分岐ではないでしょうか。
#include <stdio.h>
int main(void){
int no;
printf("整数を入力してください");
scanf("%d",&no);
if(no%2==1)
printf("入力された数字は奇数です");
else
printf("入力された数字は偶数です");
}
上記のプログラムは入力された整数が奇数か偶数か判定するプログラムです。
scanf("%d",&no);
の部分でキーボードから入力されたものをint型のnoという変数に格納しています。
if(no%2==1)
printf("入力された数字は奇数です");
の部分で、no÷2の値が1の場合奇数、
else
printf("入力された数字は偶数です"); 」
の部分でそれ以外の場合は偶数という文字を出力するプログラムとなっています。
for文やwhile文などの繰り返し処理がわからない
次につまづくポイントとしては、for文やwhile文などの繰り返し処理でしょう。
#include <stdio.h>
int main(void){
for(int i=0;i<=4;i++)
printf("%d " ,i);
}
上記のプログラムは、0から5までの数字を繰り返し出力するプログラムです。
int i=0
で整数の初期値を決定
i<=4
で整数の上限を決定
i++
で整数を1つずつ加算(0,1,2,3,4) の処理を行っています。
配列がわからない
次につまづくポイントとしては、配列でしょう。
#include <stdio.h>
int main(void){
int no[5];
for(int i=0;i<=4;i++){
scanf("%d",&no[i]);
printf("%d " ,no[i]);
}
}
上記のプログラムは、5つまでの整数を入力し、出力するプログラムです。
int no[5];
の部分で整数型の変数のかたまりである配列を5つ分用意しています
scanf("%d",&no[i]);
printf("%d " ,no[i]);
の部分で、i番目の配列の入出力を行っています。
ポインタがわからない
ポインタについては、他の記事にまとめています。参考にしてみてください。
おまけ:おすすめの勉強法や参考書など
プログラミングを学習するうえで、どのように勉強していいかわからないという方も多いかと思います。他の記事にまとめていますので、参考にしてみてください。
ちゃんとエラーを追うことがプログラミング力をつけるうえで大切
いかがだったでしょうか。プログラミングの学習をはじめたばかりのときは何がわからないかわからない。どこでエラーになっているかわからない場合も多いかと思います。一度学習の振り返りを行うことで、意外なところでつまづいていることに気付くことも多いものです。焦らずに、学習を進めていきましょう。