Advertisement
Amsar_Yunan

Untitled

Mar 24th, 2019
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.69 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. struct mahasiswa *ptrdata;
  5.  
  6. struct mahasiswa {
  7. char nrp[10]; //Contoh NRP: 0904111025
  8. char nama[20];
  9. double nrata;
  10. double *nilai;
  11. };
  12.  
  13. int main(void) {
  14. int jml, jsiswa;
  15. int max_siswa=0;
  16. double total, nratatot, totsiswa = 0;;
  17. char strnilai[5],strjum[5],strsiswa[5];
  18.  
  19. printf("Banyaknya Siswa:"); gets(strsiswa);
  20. jsiswa = atoi(strsiswa);
  21.  
  22. ptrdata = realloc(ptrdata, jsiswa * sizeof *ptrdata);
  23.  
  24. for (int j = 0; j < jsiswa; j++) {
  25. printf("Siswa ke %d\n", j+1);
  26. printf("NRP :"); gets(ptrdata[j].nrp);
  27. printf("Nama :"); gets(ptrdata[j].nama);
  28. printf("JML Test :"); gets(strjum);
  29. jml=atoi(strjum);total=0;
  30.  
  31. ptrdata[j].nilai = realloc(ptrdata[j].nilai, jml * sizeof *ptrdata[j].nilai);
  32.  
  33. for(int i=0;i<jml;i++)
  34. {
  35. printf("Nilai Test %d:",i+1);
  36. gets(strnilai);
  37. ptrdata[j].nilai[i]=atof(strnilai);
  38. total+=ptrdata[j].nilai[i];
  39. }
  40. ptrdata[j].nrata=total/jml;
  41. }
  42.  
  43. printf("Data mahasiswa yang telah diinputkan :\n");
  44. for(int j=0;j<jsiswa;j++)
  45. {
  46. printf("Siswa ke %d\n",j+1);
  47. printf("NRP : %s\n",ptrdata[j].nrp);
  48. printf("Nama : %s\n",ptrdata[j].nama);
  49. for(int i=0;i<jml;i++)
  50. {
  51. printf("Nilai Test%d:%6.2lf\n",i+1,ptrdata[j].nilai[i]);
  52. }
  53. printf("Nilai Rata2 Siswa ke %d = %6.2lf\n",j+1, ptrdata[j].nrata);
  54. totsiswa+=ptrdata[j].nrata;
  55. }//End of For
  56.  
  57. nratatot=totsiswa/jsiswa;
  58. printf("Nilai Rata2 Sel.Siswa = %6.2lf\n",nratatot);
  59.  
  60. return 0;
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement