fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4.  
  5. typedef struct {
  6. char na[64];
  7. int sts[6];
  8. } Monster;
  9.  
  10. Monster creMonster() {
  11. int i, k;
  12. Monster tmp;
  13. k = rand() % 8 + 4;
  14. for (i = 0; i < k; i++) {
  15. tmp.na[i] = 'a' + rand() % 26;
  16. }
  17. tmp.na[k] = '\0';
  18.  
  19. for (i = 0; i < 6; i++) {
  20. tmp.sts[i] = rand() % 255 + 1;
  21. }
  22.  
  23. return tmp;
  24.  
  25. }
  26.  
  27. void priMonster(Monster m) {
  28. printf("%s ", m.na);
  29. for (int i = 0; i < 6; i++) {
  30. printf("%3d ", m.sts[i]);
  31. }
  32. printf("\n");
  33. }
  34.  
  35. int main() {
  36. srand((unsigned)time(NULL));
  37. int i, n;
  38. Monster *monsters;
  39.  
  40. scanf("%d", &n);
  41.  
  42. monsters = (Monster *)malloc(sizeof(Monster) * n);
  43.  
  44. if (monsters == NULL) {
  45. printf("ERROR\n");
  46. return 0;
  47. }
  48.  
  49. for (i = 0; i < n; i++) {
  50. monsters[i] = creMonster();
  51. printf("%03d ", i + 1);
  52. priMonster(monsters[i]);
  53. }
  54.  
  55. free(monsters);
  56.  
  57. return 0;
  58.  
  59. }
  60.  
Success #stdin #stdout 0s 5340KB
stdin
6
stdout
001 iihbdnz  53  94 234  97 175 223 
002 ynmv  11  64 234  86 240 102 
003 eqengryrbzu  44  33 130 137 138  99 
004 jtpyf 208 243  66 186 201 177 
005 zucdjlujcx 253 246 174  31 121  56 
006 ikvbavjm 109  36 179  54  84  83