السلام عليكم ورحمة الله وبركاته
كالعادة، لدي مشكلة!
اللغة المستخدمة: C
البرنامج المستخدم: Turbo C++ IDE
المشكلة هي في الكود التالي:
#include <stdio.h>
#include <conio.h>
struct record
{
int i;
char ch;
};
void main (void)
{
record rec;
FILE *record;
clrscr();
record=fopen("c:\\Try1.txt","a");
if(record == NULL)
{
clrscr();
printf("Error");
getch();
}
else
{
printf("Enter Integer= ");
scanf("%i",&rec.i);
fflush(stdin);
printf("\nEnter Characters= ");
scanf("%c",&rec.ch);
fflush(stdin);
clrscr();
printf("Integer= %i", rec.i);
printf("\nCharacters= %c", rec.ch);
printf("\nPress any key to save record...");
getch();
fwrite(&rec,sizeof rec,1,record);
}
fclose(record);
}المشكلة هي كالتالي:
عندما أكتب في الـ ch مثلاً: Ahmad ، ثم أستخدم printf لقراءة المحتوى في الـ ch لا يقرأ الكلمة، بل يقرأ حرف منها أو يحولها إلى رموز، ونفس الطريقة في الـ i ، إن كتبت أكثر من رقم يقرأ رقم أو رقمين فقط، فأين المشكلة؟!
أشكركم