Dimitrija

Laboratoriski ISPITNI - 2 SP

Jan 5th, 2021 (edited)
791
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.78 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3. #define MAX 1000
  4.  
  5. /*
  6.  
  7. Во дадена датотека “broevi.txt” се запишани повеќе редови со броеви така што секој ред започнува со еден цел број (N>=1) што означува колку броеви следуваат по него во тој ред. Да се напише програма која на СИ за секој ред ќе го испечати бројот со најголема најзначајна цифра. Читањето на броеви завршува кога ќе се прочита 0.
  8.  
  9. Input:
  10. 4 43123 1123 998 454
  11. 2 16777 7
  12. 5 18 7651 88 1332 76511
  13. 0
  14.  
  15. Output:
  16. 998
  17. 7
  18. 88
  19.  
  20. */
  21.  
  22.  
  23.  
  24. //ne menuvaj!
  25. void wtf() {
  26.     FILE *f = fopen("broevi.txt", "w");
  27.     char c;
  28.     while((c = getchar()) != EOF) {
  29.         fputc(c, f);
  30.     }
  31.     fclose(f);
  32. }
  33.  
  34. int main()
  35. {
  36.     wtf();
  37.    
  38.    FILE *dat;
  39.    if ((dat=fopen("broevi.txt","r"))==NULL){
  40.         fprintf(stderr,"ERROR WHILE OPENING");
  41.         return -1;
  42.    }
  43.    
  44.     int niza[MAX][MAX] ={0};
  45.     int n,i,red=0,kol=0;
  46.     int max,temp;
  47.    
  48.     while (!(feof(dat))){
  49.       fscanf(dat,"%d",&red);
  50.         if (red == 0){
  51.             continue;
  52.         }
  53.         else{
  54.         max=0;
  55.         for (i=0;i<red;i++){
  56.        
  57.             fscanf(dat,"%d",&niza[kol][i]);
  58.            
  59.             temp = niza[kol][i];
  60.            
  61.             while ((temp/10) != 0){
  62.                 temp=temp/10;
  63.             }
  64.            
  65.             if (temp > max){
  66.                 max = temp;
  67.                 n = niza[kol][i];
  68.             }
  69.            
  70.         }
  71.         printf("%d\n",n);
  72.         kol++;
  73.         }
  74.     }
  75.    
  76.    
  77.    
  78.    
  79.     fclose(dat);
  80.     return 0;
  81.    
  82. }
Add Comment
Please, Sign In to add comment