Advertisement
Guest User

Untitled

a guest
Jun 20th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.20 KB | None | 0 0
  1. #include<stdio.h>
  2.  
  3. struct registroNota
  4. {
  5. int CodDisciplina;
  6. int CodAluno;
  7. float Nota;
  8. };
  9.  
  10. int main()
  11. {
  12. struct registroNota A;
  13. int q=0,m, opbusca, numero, cod1, cod2, ok=0, contador=0;
  14. float cod3, soma=0, media;
  15. FILE *arquivo, *p;
  16. p=fopen("ResultadoMedia.txt", "w");
  17. while(q==0)
  18. {
  19. m=2;
  20. do
  21. {
  22. printf("Escolha uma opcao (0 - sair 1 - continuar inserindo dados 2 - Fazer busca): ");
  23. scanf("%d",&m);
  24. }
  25. while(m!=0&&m!=1&&m!=2);
  26. if(m==0)
  27. {
  28. printf("Programa finalizado.");
  29. q=1;
  30. }
  31. if(m==1)
  32. {
  33. arquivo=fopen("RegistroAlunos.txt","a");
  34. printf("\nEntre com o codigo da disciplina: ");
  35. scanf("%d",&A.CodDisciplina);
  36. fprintf(arquivo,"%d\t",A.CodDisciplina);
  37. printf("\nEntre com o codigo do aluno: ");
  38. scanf("%d",&A.CodAluno);
  39. fprintf(arquivo,"%d\t",A.CodAluno);
  40. printf("\nEntre com a nota do aluno: ");
  41. scanf("%f",&A.Nota);
  42. fprintf(arquivo,"%.1f\n",A.Nota);
  43. fclose(arquivo);
  44. }
  45. if(m==2)
  46. {
  47. arquivo=fopen("RegistroAlunos.txt","r");
  48. printf("Escolha um tipo de busca: 1 - Busca por aluno 2 - Busca por disciplina: ");
  49. scanf("%d", &opbusca);
  50. if(opbusca==1)
  51. {
  52. printf("Digite o numero do aluno: ");
  53. scanf("%d", &numero);
  54. while(!feof(arquivo))
  55. {
  56. fscanf(arquivo, "%d\t%d\t%f\n", &cod1,&cod2,&cod3);
  57. if(cod2==numero)
  58. {
  59. printf("%d\t%d\t%f\t\n", cod1, cod2, cod3);
  60. ok=1;
  61. }
  62.  
  63. }
  64. if(ok==0)
  65. printf("Aluno nao encontrado\n");
  66. ok=0;
  67. fclose(arquivo);
  68. }
  69. if(opbusca==2)
  70. {
  71. printf("Digite o numero da disciplina: ");
  72. scanf("%d", &numero);
  73. while(!feof(arquivo))
  74. {
  75. fscanf(arquivo, "%d\t%d\t%f\n", &cod1,&cod2,&cod3);
  76. if(cod1==numero)
  77. {
  78. contador++;
  79. soma=soma+cod3;
  80. printf("%d\t%d\t%f\t\n", cod1, cod2, cod3);
  81. ok=1;
  82. }
  83. }
  84. if(soma!=0 && contador!=0)
  85. {
  86. media = soma/contador;
  87. rewind(arquivo);
  88. while(!feof(arquivo))
  89. {
  90. fscanf(arquivo, "%d\t%d\t%f\n", &cod1,&cod2,&cod3);
  91. if(cod1==numero && cod3>media)
  92. fprintf(p, "%d\n", cod2);
  93. }
  94. }
  95. fclose(p);
  96. if(ok==0)
  97. printf("Disciplina nao encontrada\n");
  98. ok=0;
  99. fclose(arquivo);
  100. }
  101. }
  102. }
  103. return 0;
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement