【掲示板ご利用上の注意】

 ※題名は具体的に!
 ※学校の課題の丸投げ禁止!
 ※ソースの添付は「HTML変換ツール」で字下げ!
 ※返信の引用は最小限に!
 ※環境(OSとコンパイラ)や症状は具体的に詳しく!
 ※マルチポスト(多重投稿)は謹んで!

 詳しくはこちら



 本当はこんなに大きく書きたくはないのですが、なかなか守っていただけなくて…。
 守ってくださいね。お願いします。(by管理人)

C言語ソース⇒HTML形式ツール   掲示板2こちら


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

No.19776

削除のプログラムについて
投稿者---フランク.ランパ-怒(2005/02/07 14:23:15)


今,リストにある名前などの削除をしようと考えています.
下のようなプログラムを作ってみましたが,不完全です.どのようなものを足せばよいでしょうか??



fp = fopen("t", "r");
while(!feof(fp)){
fscanf(fp, "%s %s %s %s",&data[k].name, &data[k].adress, &data[k].tel, &data[k].group);
printf("NO.%d %s %s %s %s\n",k + 1,data[k].name, data[k].adress, data[k].tel, data[k].group);
k = k + 1;
printf("-------------------------------------------------------------------\n");
}

printf("どのデ-タを消去しますか??\n");
scanf("%d", &i);
fp = fopen("t", "w");
for(i = 0; i < DATASIZE; i++){
fprintf(fp, "%s %s %s %s\n",data[i].name, data[i].adress, data[i].tel, data[i].group);
}
fclose(fp);
break;


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:削除のプログラムについて 19777 Blue 2005/02/07 14:56:41


No.19777

Re:削除のプログラムについて
投稿者---Blue(2005/02/07 14:56:41)


>scanf("%d", &i);
>for(i = 0; i < DATASIZE; i++){
入力された値が書き換わってますが。

k が 0 から始まっているかわかりませんが、こんな風に書くのでは。

scanf( "%d", &i );
for ( j = 0; j < DATASIZE; j++ )
{
     if ( i != j )
     {
         fprintf( fp, "%s %s %s %s\n",data[ j ].name, data[ j ].adress, data[ j ].tel, data[ j ].group );
     }
}

# 気になった点があるので羅列します。(まだありそうですが。)
# ・最初のファイルオープンでfcloseしてない。
# ・ファイル名に拡張子がない。
# ・【掲示板ご利用上の注意】を読みましょう。




この投稿にコメントする

削除パスワード

No.19784

Re:削除のプログラムについて
投稿者---フランク。ランパード(2005/02/08 15:01:58)


確かにiが書き換わってますね。気づきませんでした。今、アドレス帳機能を作っているのですが、その一部分だけだったので足りないものが多々ありますね。。申し訳ないです。。




この投稿にコメントする

削除パスワード

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