fgets関数
標準入力からの文字入力といえばscanf関数ですが、セキュリティの問題上、scanfではなくfgetsを利用することをすすめます。
#include <stdio.h> //必要であれば追記
#include <string.h>
char name[21];
printf("名前を入力して下さい\t");
fgets(name, sizeof(name), stdin);
//改行コードを終端コードに置き換える
name[strlen(name) - 1] = '\0';
printf("\nあなたの名前は %s です。\n", name);
注意点
なぜscanfを使ってはいけないか?
fflush関数
scanf()では、最後の改行文字がバッファの中に残って、想定しないような動作になるときがあります。そこで、おまじないとしてfflush関数を一つ入れることをオススメします。
関連リンク