SAlut, am si eu o problema
De pe mediul de intrare se citeste o lista a studentilor unei grupe si a notelor obtinute de fiecare la un examen, informatii cu care se creeaza un tablou cu componente inregistrari. La introducerea datelor, fiecarui nume I se rezerva primele 20 de caractere din linie, numele mai scurte fiind completate pana la 20 cu spatii libere. O linie se termina cu nota studentului. Lista este terminata printr-o linie vida. pot fi maximum 30 de studenti. Sa se scrie un program care: a) Stabileste numarul de studenti prezenti la examen. b) Face statistica repartitiei notelor pe studenti sub forma: | Nota | Numar studenti| c) Afiseaza listele cu studentii care au obtinut aceeasi nota.
problema am gasit-o rezolvata
#include<stdio.h>
#include<conio.h>
typedef char sir[21];
struct student {sir nume;
int nota;};
student x[30];
sir s;
char c,d;
int i,j,n,nr;
void main(void)
{
n=0;
for(i=0;i<30;i++)
{scanf("%20s%d",x[n].nume,&x[n].nota);
n++;
c=getchar();
d=getchar();
if((c=='\n')&&(d=='\n')) break;
else ungetc(c, stdin);
}
printf("\nNumarul de studenti prezenti la examen este: %d",n);
printf("\n ___________________");
printf("\n|Nota|Numar studenti|");
printf("\n|____|______________|");
for(j=1;j<=10;j++)
{nr=0;
for(i=0;i<n;i++)
if(x[i].nota==j)
nr++;
if(j<10)
printf("\n| ");
else
printf("\n| ");
printf("%d | %d |",j,nr);
}
for(j=1;j<=10;j++)
{nr=0;
printf("\nStudentii care au obtinut nota %d :",j);
for(i=0;i<n;i++)
if(x[i].nota==j)
{nr++;
printf("\n%s",x[i].nume);
}
if(nr==0)
printf(" nu sunt\n");
}
getch();
}
Dar daca dau sa o compileze imi apare fereasta alba.... va rog daca aveti unul timp sa va uitati peste problema