fork download
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. void write_stats(int tries, int num_letters, int tries_sucess, char* buffer1, char* buffer2)
  5. {
  6. sprintf(buffer1 + strlen(buffer1),"%d ",tries);
  7. sprintf(buffer2 + strlen(buffer2),"%f ",(float)tries_sucess/num_letters);
  8. }
  9.  
  10. int main(void) {
  11. // your code goes here
  12. char buffer1[256], buffer2[256];
  13.  
  14. // initiate buffers with 0 for finding their length easily
  15. for(int i=0; i < 256; ++i)
  16. {
  17. // strlen needs this
  18. buffer1[i] = buffer2[i] = '\0';
  19. }
  20.  
  21. write_stats(1, 1, 2, buffer1, buffer2);
  22. write_stats(3, 5, 8, buffer1, buffer2);
  23. write_stats(13, 21, 34, buffer1, buffer2);
  24. write_stats(55, 89, 144, buffer1, buffer2);
  25. write_stats(233, 377, 610, buffer1, buffer2);
  26.  
  27. /*
  28.   The file accessing part commented out as ideone does not help us access
  29.   a file on their servers, for obvious reasons for obvious security
  30.   reasons. Instead, for the sake of examplifying the use case I used
  31.   stdin.
  32.   */
  33.  
  34. /*
  35.   FILE *stats;
  36.   stats = fopen("C:\\Users\\rjmal\\Documents\\CLION PROJECTS\\JogoDaForca\\stats.txt", "a");
  37.   if(stats == NULL)
  38.   {
  39.   printf("can't open file\n");
  40.   exit(0);
  41.   }
  42. */
  43. // Remove trailing space in ecah buffer by reducing their length by 1
  44. //printf("%s\n%s", buffer1, buffer2);
  45. //fclose(stats);
  46.  
  47. buffer1[strlen(buffer1) - 1] = '\0';
  48. buffer2[strlen(buffer2) - 1] = '\0';
  49. fprintf(stdout,"%s\n%s", buffer1, buffer2);
  50.  
  51. return 0;
  52. }
  53.  
Success #stdin #stdout 0s 2168KB
stdin
Standard input is empty
stdout
1 3 13 55 233
2.000000 1.600000 1.619048 1.617978 1.618037