#include <stdio.h>
#include<stdlib.h>
int main()
{
char first[10], last[10], id[10];
int stdnum;
FILE *fptr;
fptr = fopen("C:\\c\\program.txt","w");
if(fptr == NULL)
{
printf("Error!");
exit(1);
}
else
{
//first name
printf("Enter name: ");
scanf("%s", first);
fprintf(fptr,"%s ",first);
//last name
printf("Enter last name: ");
scanf("%s ", last);
fprintf(fptr,"%s", last);
//id
printf("Enter id: ");
scanf("%s %d", id, &stdnum);
fprintf(fptr,"%s\n", id);
fprintf(fptr,"%d\n", stdnum);
fclose(fptr);
return 0;
}
}
名前、姓、学生番号を尋ねるプログラムを作成しています。学生番号の形式は小文字で、その後に8桁です。 このコードを実行すると、姓と名を入力できます。私は最後の名前を入力し、cygwinの入力をヒットした後、コンソールは私に空白の行を与え、私は少なくともそれを表示するためにそれにcharacterまたは数字を入力する必要があります学生のIDを入力します。intとcharの文字列 - C
"ボブjones11"
私は出力がこのような何かになりたい::
"ボブ・ジョーンズa00998877"
Enter name: bob
Enter last name: jones
1
Enter id: a00998877
は、ファイル出力は次のようなものです
何が間違っていますか?
'のscanf( "%sの"、最後の)における%S''の後にスペースを削除してください持っている; '姓で読み込むときに。 –
[正しいC書式設定](// prohackr112.tk/pcf)を調べてください。 –