Advertisement
Guest User

Untitled

a guest
Jan 20th, 2017
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.42 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<string.h>
  4. #define NMAXC 10
  5. #define NMAXR 30
  6. typedef int matrice[NMAXR][NMAXC];
  7. typedef char string[15];
  8. void chiedidim(int &dimrx,int &dimcx);
  9. void caricamatrice(matrice mx,int dimxr,int dimxc,string cognomex[]);
  10. void mediaa(matrice mx,int dimrx,int dimcx,string cognomex[],float elencomx[]);
  11. void mediatot(int dimrx,float elencomx[],float &mediax);
  12. void elencomag(matrice mx,int dimrx,int dimcx,float mediax,string cognomex[],string elencox[],float elencomx[]);
  13. int main()
  14. {
  15. int dimr,dimc;
  16. dimc=NMAXC;
  17. matrice m;
  18. string cognome[NMAXR],elenco[NMAXR];
  19. float media,elencom[NMAXR];
  20. char risp[2];
  21. chiedidim(dimr,dimc);
  22. caricamatrice(m,dimr,dimc,cognome);
  23. mediaa(m,dimr,dimc,cognome,elencom);
  24. mediatot(dimr,elencom,media);
  25. elencomag(m,dimr,dimc,media,cognome,elenco,elencom);
  26. system("PAUSE");
  27. return 0;
  28. }
  29. void chiedidim(int &dimrx,int &dimcx)
  30. {
  31. do{
  32. printf("Inserisci il numero di alunni \n");
  33. scanf("%i",&dimrx);
  34.  
  35. }while((dimrx<=0)&&(dimrx>NMAXR));
  36. }
  37. void caricamatrice(matrice mx,int dimrx,int dimcx,string cognomex[])
  38. {
  39. int i,j;
  40. for(i=0;i<dimrx;i++)
  41. {
  42. printf("Inserisci il cognome dell'alunno %i \n",i);
  43. scanf("%s",cognomex[i]);
  44. for(j=0;j<dimcx;j++)
  45. {
  46.  
  47. printf("inserisci il voto numero %i di %s\n",j,cognomex[i]);
  48. scanf("%i",&mx[i][j]);
  49. }
  50. }
  51. }
  52. void mediaa(matrice mx,int dimrx,int dimcx,string cognomex[],float elencomx[])
  53. {
  54. int i, j,tot;
  55.  
  56. for(i=0;i<dimrx;i++)
  57. {
  58. tot=0;
  59. for(j=0;j<dimcx;j++)
  60. {
  61. tot=tot+mx[i][j];
  62.  
  63.  
  64. }
  65. elencomx[i]=(float)tot/dimcx;
  66. printf("la media dell'alunno %s e' %.2f\n",cognomex[i],elencomx[i]);
  67. }
  68. }
  69. void mediatot(int dimrx,float elencomx[],float &mediax)
  70. {
  71. int i,tot;
  72. tot=0;
  73. for(i=0;i<dimrx;i++)
  74. {
  75. tot=tot+elencomx[i];
  76. }
  77. mediax=(float)tot/dimrx;
  78. printf("la media dei voti degli alunni e' %.2f\n",mediax);
  79. }
  80.  
  81. void elencomag(matrice mx,int dimrx,int dimcx,float mediax,string cognomex[],string elencox[],float elencomx[])
  82. {
  83. int i,j;
  84. j=0;
  85. for(i=0;i<dimrx;i++)
  86.  
  87. {
  88. if(elencomx[i]>mediax)
  89. {
  90. strcpy(elencox[j],cognomex[i]);
  91. printf("L'alunno %s ha una media di %.2f,maggiore di quella della classe \n",elencox[j],elencomx[i]);
  92.  
  93. j++;
  94. }
  95.  
  96.  
  97. }
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement