السلام عليكم
شلونكم أخواني إن شاء الله بخير
الصراحة عندي برنامج مصمم أول شيء ندخل عدد الطلب وبعدها ندخل على التكرار for loop وندخل اسم الطالب وبعدها درجة الأمتحان الأول والثاني والثالث والرابع وبعدها ندخل درجة الإمتحان النهائي وثم يجمع العلامات ثم يضغ النسبة بالإضافة للتقدير A , B , C , D & F ولكن المشكلة أن يطوف أول سطر وهو أدخال أسم الطالب باستخدام الداله gets ولكن عند استخدام scanf لا توجد مشاكل فما المشكلة وما هو الحل :
#include<stdio.h>
void main()
{
int st_num,counter,fir_assig,sec_assig,thi_assig,fou_assig,exam,final_percentages;
char st_name[15];
printf("Enter number of student's: ");
scanf("%d",&st_num);
for(counter=0;counter<st_num;counter++)
{
printf("first name is: ");
gets(st_name);
printf("Enter the first assignments result (%%5) : ");
scanf("%d",&fir_assig);
printf("Enter the sencond assignments result (%%5) : ");
scanf("%d",&sec_assig);
printf("Enter the therd assignments result (%%10) : ");
scanf("%d",&thi_assig);
printf("Enter the fourth assignments result (%%10) : ");
scanf("%d",&fou_assig);
printf("Enter the exam result (%%70) : ");
scanf("%d",&exam);
final_percentages=fir_assig+sec_assig+thi_assig+fou_assig+exam;
printf("Student name is %s, final percentages %%%d, ",st_name,final_percentages);
if(final_percentages<50)
{
printf("grades is F\n");
}else if(final_percentages>=50&&final_percentages<65)
{
printf("grades is C\n");
}else if(final_percentages>=65&&final_percentages<80)
{
printf("grades is B\n");
}else if(final_percentages>=80&&final_percentages<=100)
{
printf("grades is A\n");
}
}
getch();
}وشكرا مقدما ...

