これは私の「電話帳」プログラムの一部です。ファイルioで全行を印刷
void viewall(){
int n, checking = 0;
char name[50];
fp = fopen("Phonebook.txt","r");
printf ("\n\n");
fscanf (fp, "%s %d", name, &n);
while (!feof(fp)){
printf (" %s +880%d\n", name, n);
fscanf (fp, "%s %d", name, &n);
++checking;
}
if (checking == 0){
printf (" Contact List is Empty. No Contacts to Show...");
}
printf ("\n\n");
fclose(fp);
menu();
}
この部分はすべての連絡先をリストに表示します。しかし、連絡先の名前に2つの部分がある場合、それらは分かれています。たとえば、名前としてAnik Shahriarに入力してから自分の番号を入力します。私は私のファイルを見て、このデータはそこにあるべきだった。
Anik Shahriar 01*******93
しかし、すべての連絡先を表示したいとき。
Anik 0
Shahriar 01*******93
どうすればプログラムを行全体に印刷できますか?
( "Shahriar"は文字列です)ので、 'n'に' 0'を入れます。 __The__それは "Shahriar"と電話番号、その部分を見つける。結論として、姓と名の変数がない限り、姓と名を区切るためのスペースを使用することはできません。 – Jerfov2
それは@ user3121023働いたしかし別の問題。今回は同じ行に名前が表示されますが、連絡先番号は次の行に表示されます。 –
これまでになかった。彼らは同じ行にいました。 fgetsを使用した後、彼らは別の行にあります。 fgetsから '\ n'をどのように終了させるのですか? –