掲示板ランキング  エビ(あまエビ)  エビ(その他)  タコ  イカ  いくら・筋子  明太子  たらこ  からすみ


掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板1

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧

No.6321

構造体にキーボードでデータ入力
投稿者---meko(2006/08/24 11:52:33)


struct meibo{
    char name[11];
    char sex[6];
    int weit;
};

という構造体で、
void main(){
    struct meibo classmate[] = {
        { "abe",    "male", "80" },
    };
}

というようなプログラム書き込みでなく
scanf関数などを使ったキーボード入力がしたいです。

プログラムをどのように組んだらいいか教えてください。


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:構造体にキーボードでデータ入力 6322 Blue 2006/08/24 12:00:46


No.6322

Re:構造体にキーボードでデータ入力
投稿者---Blue(2006/08/24 12:00:46)


ここのサイトの
15−2.構造体の使用例 (1)scanf()を用いてのデータ入力
は参考にしてみましたか?


この投稿にコメントする

削除パスワード

No.6368

上位指定件数のみ表示
投稿者---meko(2006/08/26 20:32:04)


過去ログの検索はしたのですが、ホームページの方の調べ方が不十分だったようです。
ご指摘ありがとうございました。

更に初心者な質問で申し訳ないのですが、
入力したデータ10件のうち上位3件を表示する、などの操作は可能でしょうか?
自分でやってみたところ表示したいデータ数分(この場合は3)ずつ
ソートされたデータが全部表示されてしまいました。


この投稿にコメントする

削除パスワード

No.6369

Re:上位指定件数のみ表示
投稿者---ruby(2006/08/26 20:39:20)


>自分でやってみたところ表示したいデータ数分(この場合は3)ずつ
>ソートされたデータが全部表示されてしまいました。

ソースコード、入力データおよび期待している結果を提示してくださると、
そのソースコードに誤りがあれば指摘できるかもしれません。


この投稿にコメントする

削除パスワード

No.6371

Re:上位指定件数のみ表示
投稿者---meko(2006/08/29 19:54:33)


あれから色々やってみたところ、
今度は入力データ数-2件?が表示され、エラーの出るプログラムになりました。
dtpがデータを入力した構造体、ipとstart、nextは作業用領域です。

for (ip =start; ip->next !=NULL; ip =ip->next){
     if (dtp->point < ip->next->point){
        dtp->next = ip->next;
        ip->next = dtp;
        break;
      }
 }
if(ip->next == NULL){
     ip->next = dtp;
     dtp->next = NULL;
     }
 }

ip->next = 5;   /*ここが原因だと思います*/
for(ip =start->next; ip!= NULL; ip = ip->next){
     printf("[%d] %s %d\n", ip->num,ip->name, ip->point);
    }
    return 0;
}


構造体データの
printf("[%d] %s %d\n", ip->num,ip->name, ip->point);

の表示を指定件数(この場合は5件)だけ表示するようにしたいです。



この投稿にコメントする

削除パスワード

No.6372

Re:上位指定件数のみ表示
投稿者---nano(2006/08/29 20:15:19)


とにかく、今のソースコードを全部見せていただけませんか?
小出しにされると、その分、解決への時間がかかるだけです。


この投稿にコメントする

削除パスワード

No.6373

Re:上位指定件数のみ表示
投稿者---επιστημη(2006/08/29 23:56:48)


> ip->next = 5; /*ここが原因だと思います*/

そこが原因です。

> 指定件数(この場合は5件)だけ表示するようにしたいです。

ループを回った回数を勘定しておき、5に達したらbreak。




この投稿にコメントする

削除パスワード

No.6432

Re:上位指定件数のみ表示
投稿者---meko(2006/09/07 18:46:01)


>ループを回った回数を勘定しておき、5に達したらbreak。

返信が遅くなりましたが、解説ありがとうございました。
ループ回数をwhileの条件に追加したら解決しました。



この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧





掲示板提供:(有)リアル・インテグリティ