C言語やC++でコンソールアプリケーションでメニュー等を表示する場合、元々、表示していた内容を全てクリアした状態にしたいことがあります。
このような場合の実装方法について説明します。

コンソールの表示をクリアするには、以下を利用します。
 ・system()関数
 ・コマンドプロンプト上で動作するclsコマンド

system()関数は、引数に指定したコマンドを実行するための関数です。
この関数を利用するには、<stdlib.h>をincludeする必要があります。
この関数を使って、clsコマンドを実行することにより、コンソールの情報をクリアすることができます。

以下、サンプルです。
《事前準備》
 1.新規にコンソールアプリケーション プロジェクトを作成する。
 2.以下のコードを入力する。

《コード》
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char* argv[]){
char ret;
for(int idx=0; idx<10; idx++){
printf("%d\n", idx);
}
//コンソールの表示内容をクリアする
system("cls");
printf("abc\n");
scanf("%c", &ret);
}

上記のサンプルを実行すると、以下のような結果が表示されます。
abc

最初に「0〜9」を出力する処理がありますが、「system("cls");」によってコンソールの内容がクリアされた際に消されてしまいます。
そのため、「system("cls");」の後に出力した「abc」のみが表示されます。
「system("cls");」の動作を確認するため、「system("cls");」をコメントアウトして実行してみましょう。
すると、以下のような結果が表示されます。
0
1
2
:
9
abc

今度は、全ての出力結果が表示されます。
これで「system("cls");」によってコンソールの内容がクリアされていることが確認できました。

【補足事項】
・Linuxの場合には、system("reset")で同様の結果を得ることができます。
・system()関数をC++で利用する場合は、「<cstdlib>」をincludeします。
 C++の場合には、以下のようなコードとなります。
#include <iostream>
#include <cstdlib>

int main(int argc, char* argv[]){
for(int idx=0; idx<10; idx++){
std::cout << idx << std::endl;
}
//コンソールの表示内容をクリアする
std::system("cls");
std::cout << "abc" << std::endl;
std::cin.get();
}