Advertisement
FAMDS

4

Nov 15th, 2022 (edited)
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.32 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <string.h>
  4. int main ()
  5. {
  6. struct aluno
  7. {
  8. char matricula[10];
  9. char nome[100];
  10. float p1, p2, p3, mn;//p=prova mn=media notas
  11. };
  12. typedef struct aluno aluno;
  13.  
  14. int i=0, posmaxnot1=0,posminmed=0,posmaxmed=0;
  15. //psmaxnot1 = identificador da maior nota prova 1
  16. //posminmed = identificador menor media
  17. //posmaxmed = identificador maior media
  18. float maxmed=0,minmed=10,medger=0,maxnot1=0,sommed=0;
  19. //maxmed = maior media
  20. //minmed = menor media
  21. //medger = media geral
  22. //masnot1 = maior nota prova 1
  23. //sommed = soma das medias
  24. aluno a[5];
  25. for(i=0; i<2; i++){
  26. strcpy (a[i].matricula,"NULL");
  27. strcpy (a[i].nome,"NULL");
  28. a[i].p1=0;
  29. a[i].p2=0;
  30. a[i].p3=0;
  31. a[i].mn=0;
  32. }
  33. for(i=0; i<5; i++)
  34. {
  35. printf ("Informe a matricula ..............: ");
  36. fflush (stdin);
  37. fgets (a[i].matricula, 10, stdin);
  38. printf ("Informe o nome ...................: ");
  39. fflush (stdin);
  40. fgets (a[i].nome, 100, stdin);
  41. printf ("Informe a nota da primeira prova .: ");
  42. scanf ("%f%*c", &a[i].p1);
  43. printf ("Informe a nota da segunda prova ..: ");
  44. scanf ("%f%*c", &a[i].p2);
  45. printf ("Informe a nota da terceira prova .: ");
  46. scanf ("%f%*c", &a[i].p3);
  47. printf("\n");
  48. a[i].mn = (a[i].p1 + a[i].p2 + a[i].p3)/3;
  49. sommed=sommed+a[i].mn;
  50. medger=sommed/5;
  51. }
  52. for(i=0;i<5;i++){
  53. //encontrando e identificando maior nota na prova 1
  54. if (a[i].p1>maxnot1){
  55. maxnot1=a[i].p1;
  56. posmaxnot1 = i;}
  57. //encontrando e identificando maior média
  58. if(a[i].mn>maxmed){
  59. maxmed= a[i].mn;
  60. posmaxmed= i;
  61. }
  62. // encontrando e identificando menor média
  63. if(a[i].mn<minmed){
  64. minmed= a[i].mn;
  65. posminmed= i;
  66. }
  67. }
  68. //Imprimindo resultados
  69. printf ("\tO aluno com maior nota na p1 ......: %.2f foi %s\n",maxnot1, a[posmaxnot1].nome);
  70. printf ("\tO aluno com maior media geral .....: %.2f foi %s\n",maxmed, a[posmaxmed].nome);
  71. printf ("\tO aluno com menor media geral .....: %.2f foi %s\n",minmed, a[posminmed].nome);
  72.  
  73. for (i=0;i<5;i++){
  74. if(a[i].mn<6){
  75. printf("\t%s \tmedia %.2f ..................: reprovado\n\n", a[i].nome,a[i].mn);
  76. }else{
  77. printf("\t%s \tmedia %.2f ..................: aprovado\n\n", a[i].nome,a[i].mn);
  78. }
  79. }
  80. return 0;
  81. }
  82.  
  83.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement