fflush(stdin) を使用して stdin ストリームの残りを次のようにフラッシュするという間違いを犯しました。
printf("Gimme number");
scanf("%d",&number);
fflush(stdin);
printf("Gimme string");
gets(string);
もちろん、ヘッダー ファイルと残りのファイルを含めました。ここで古い投稿を検索しましたが、scanf("%c\n",c); に関する提案しか見ませんでした。. これにより、scanf("%d\n",x); を実行すると、プログラムがクラッシュします。アイデアはありますか?