

No.3ベストアンサー
- 回答日時:
#1です。
>名前、社員番号で1つの要素をつくり、その集合(配?)から検索したいのですが、配列で考えて良いのでしょうか?
その通りです。例えば以下のようにします。
1つの要素として、例えば以下の様な構造体を作成します。
typedef struct _tSHAIN {
char name[100]; /*名前*/
int shain_bango; /*社員番号*/
char denwa_bango[20]; /*電話番号:*/
} SHAIN;
社員番号は数字であるとします。
SHAINtbl[100]; /* 100人分の社員テーブル*/
tbl[n].shain_bango (nは0~99の何れかの値)でテーブル中の社員
を参照できます。
例えば、このテーブルに先頭から20件まで、
データが入っていて、画面から入力された社員番号が
このテーブルにあるかどうかを検索するには、
以下のようにします。
int i;
int shain_in; /* 社員番号*/
shainに入力データをセット
for (i=0;i<20;i++){
if (shain==tbl[i].shain_bango){
社員番号が見つかった時の処理
break; /* forのループを抜ける*/
}
}
if (i==20){
見つからなかったの処理
}
No.2
- 回答日時:
社員番号から名前や電話番号を検索する関数とのことですが、この場合検索は二分探索を使ったほうが効率は良いと思います。
ただし、登録を行った後データを、社員番号で昇順または降順にする必要があります。プログラム的には修正もできる関数も作ったほうが良いと思われます。
また、検索をする場合scanfは控えたほうが良いです。テストプログラムなら良いですが。
fgets等が妥当でしょう。

No.1
- 回答日時:
本件、C言語(又はC++)の練習問題と考えて良いのでしょうか。
上記の前提で、話を進めます。
1.最大100個の要素を持ったテーブルを作成します。
(社員名簿のテーブル)
2.1つの要素は、名前、社員番号、電話番号から構成されるものとします。
3.画面から、名前、社員番号、電話番号を入力します。
このデータをテーブルへ順に先頭から格納します。この処理は、最大100回繰り返しを行えるようにします。
4.データの入力完了後、社員番号を画面から入力します。入力された社員を、テーブルの先頭から順に検索し、一致した社員番号存在すれば、それを表示します。この処理は、何回でも行えるようにします。
上記のようなプログラムを作成してください。
この回答への補足
回答ありがとうございました。名前、社員番号で1つの要素をつくり、その集合(配列?)から検索したいのですが、配列で考えて良いのでしょうか?その点が分かりません。テーブルの作成はまだ出てきていませんので、他の方法で考えたいと思います。
補足日時:2004/01/28 13:41お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Vba Replace関数について教えて...
-
CSSが全く分かりません、お助け...
-
DLLファイルの逆コンパイラにつ...
-
バッチファイルで以下のような...
-
CPUが16bitでも32bitOSでコンパ...
-
gccを行ってもexeファイルが生...
-
c言語
-
VisualStudio2022でC言語プログ...
-
Windows Formアプリからコンソ...
-
visual studio 2022でのC#プロ...
-
C言語の関数のextern宣言
-
プログラマー達は何故、プログ...
-
PIC12F1822でLED調光器を作りたい
-
最初に聞かれたこと
-
C言語 関数、変数の宣言について
-
C言語について(初心者)
-
プログラミングc++を全く分か...
-
あってる
-
DNCL(共テ用プログラミング言語...
-
DNCL(共テ用プログラミング言語...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESS DCOUNTの抽出条件について
-
ACCESS VBAでテーブル内の特定...
-
SQLServer→Access インポート
-
Access vbaで重複レコードの削...
-
データがあれば○○なければのSQL
-
重複した複数のレコードを1レ...
-
Accessで縦と横を入れ替えたい
-
VBAでテーブル名とカラム名を動...
-
ACCESSで実行時エラー3008
-
Accessリンクするテーブルが見...
-
アクセスで連続データをテーブ...
-
Microsoft Access 2010 のvbaを...
-
VB.NETでテーブルを作成
-
【access】複数のフィールドの...
-
DAOでSQLServerに接続し、LeftJ...
-
access追加クエリーでform入力...
-
Access BetweenとLikeの組み合...
-
社員名簿から検索する関数
-
抽出条件でデータ型が一致しま...
-
ACCESSで購入回数を表示する方...
おすすめ情報