fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h> //乱数の生成のため
  4.  
  5. //構造体の宣言
  6. typedef struct {
  7. char na[64];
  8. int stts[6];
  9. } Monster;
  10.  
  11. //ランダムにモンスターを生成
  12. Monster creMonster(){
  13. int i,k;
  14. Monster tmp;
  15. k = rand()%8+4;
  16. int a = 'a' + rand()%26;
  17. for(i=0;i<k;i++) tmp.na[i] = 'a' + rand()%26;
  18. tmp.na[k] = '\0';
  19. for(i=0;i<6;i++) tmp.stts[i] = rand()%255+1;
  20. return tmp;
  21. }
  22.  
  23. //モンスターの情報を表示する関数
  24. void priMonster(Monster m){
  25. printf("%12s : ",m.na);
  26. for(int i=0;i<6;i++)
  27. printf("%3d ",m.stts[i]);
  28. printf("\n");
  29. }
  30.  
  31. int main(){
  32. srand((unsigned)time(NULL));
  33. int i, n;
  34. Monster *monsters;
  35. scanf("%d",&n);
  36. monsters = (Monster *)malloc(sizeof(Monster)*n);
  37. if(monsters == NULL){
  38. printf("ERROR\n");
  39. return 0;
  40. }
  41. for(i=0;i<n;i++){
  42. monsters[i] = creMonster();
  43. printf("%03d ",i+1);
  44. priMonster(monsters[i]);
  45. }
  46. free(monsters);
  47. return 0;
  48. }
  49.  
Success #stdin #stdout 0.01s 5292KB
stdin
6
stdout
001     rtufovoav  : 187  16 248  73 255  26 
002    ezgzfaooqd  :  26 200 167 255 104 214 
003       zxubses  : 189  79  96 214 159 145 
004          znqb  : 142 151  73  86  48  18 
005     biikkhenz  :  25   4 249 230 227  79 
006   dzjqrkrvfyx  : 132   1 191 125  83 117