質問編集履歴

5

修正

2019/04/19 13:58

投稿

samusunn36
samusunn36

スコア13

test CHANGED
File without changes
test CHANGED
@@ -14,7 +14,7 @@
14
14
 
15
15
 
16
16
 
17
- 2番目の番号を入力したのちに、処理落ちする
17
+ 入力したがうまく表示されない
18
18
 
19
19
 
20
20
 
@@ -48,35 +48,39 @@
48
48
 
49
49
  struct result *s_rt[NUM];
50
50
 
51
- s_rt[0] = (result*)malloc(sizeof(result));
52
51
 
53
- if (s_rt == NULL)
54
52
 
55
- printf("メモリの動的確保に失敗しました\n");
53
+ int i;
56
54
 
57
-
55
+ for (i = 0; i < NUM; i++) {
58
56
 
59
- else {
57
+ s_rt[i] = (result*)malloc(sizeof(result));
60
58
 
61
- int i;
59
+ if (s_rt[i] == NULL)
62
60
 
63
- for (i = 0; i < NUM; i++) {
61
+ printf("メモリの動的確保に失敗しました\n");
64
62
 
63
+
64
+
65
+ else {
66
+
65
- printf("%d番目の番号を入力してください:",i+1);
67
+ printf("%d番目の番号を入力してください:", i + 1);
66
68
 
67
69
  scanf_s("%d", &s_rt[i]->number);
68
70
 
69
- printf("%d番目の名前を入力してください:", i+1);
71
+ printf("%d番目の名前を入力してください:", i + 1);
70
72
 
71
73
  scanf_s("%s", s_rt[i]->name, NUM1);
72
74
 
73
- printf("%d番目の英語の点数を入力してください:", i+1);
75
+ printf("%d番目の英語の点数を入力してください:", i + 1);
74
76
 
75
77
  scanf_s("%d", &s_rt[i]->english);
76
78
 
79
+ }
77
80
 
81
+ free(s_rt[i]);
78
82
 
79
- }
83
+ }
80
84
 
81
85
  int j;
82
86
 
@@ -86,19 +90,13 @@
86
90
 
87
91
  printf("名前:%s\n", s_rt[j]->name);
88
92
 
89
- printf("英語の点数:%d", s_rt[j]->english);
93
+ printf("英語の点数:%d\n", s_rt[j]->english);
90
94
 
91
95
  }
92
-
93
- }
94
-
95
- free(s_rt);
96
96
 
97
97
  return 0;
98
98
 
99
99
  }
100
-
101
-
102
100
 
103
101
  ```
104
102
 
@@ -120,6 +118,34 @@
120
118
 
121
119
  2番目の番号を入力してください:4
122
120
 
121
+ 2番目の名前を入力してください:b
122
+
123
+ 2番目の英語の点数を入力してください:2
124
+
125
+ 3番目の番号を入力してください:5
126
+
127
+ 3番目の名前を入力してください:c
128
+
129
+ 3番目の英語の点数を入力してください:3
130
+
131
+ 番号:-572662307
132
+
133
+ 名前:ンンンンンンンンンンンンンンンンンンンンンンンンンンンン
134
+
135
+ 英語の点数:-572662307
136
+
137
+ 番号:-572662307
138
+
139
+ 名前:ンンンンンンンンンンンンンンンンンンンンンンンンンンンン
140
+
141
+ 英語の点数:-572662307
142
+
143
+ 番号:-572662307
144
+
145
+ 名前:ンンンンンンンンンンンンンンンンンンンンンンンンンンンン・ン
146
+
147
+ 英語の点数:-572662307
123
148
 
124
149
 
150
+
125
- ここまで表示されて処理止まってしまいます
151
+ 文字化け起きてしま

4

修正

2019/04/19 13:57

投稿

samusunn36
samusunn36

スコア13

test CHANGED
File without changes
test CHANGED
@@ -116,7 +116,7 @@
116
116
 
117
117
  1番目の名前を入力してください:a
118
118
 
119
- 1番目の点数を入力してください:1
119
+ 1番目の英語の点数を入力してください:1
120
120
 
121
121
  2番目の番号を入力してください:4
122
122
 

3

追記

2019/04/19 13:35

投稿

samusunn36
samusunn36

スコア13

test CHANGED
File without changes
test CHANGED
@@ -112,4 +112,14 @@
112
112
 
113
113
 
114
114
 
115
- ここにより詳細な情報記載してください
115
+ 1番目の番号入力してください:1
116
+
117
+ 1番目の名前を入力してください:a
118
+
119
+ 1番目の点数を入力してください:1
120
+
121
+ 2番目の番号を入力してください:4
122
+
123
+
124
+
125
+ ここまで表示されて処理が止まってしまいます

2

コンパイルの表示

2019/04/19 13:25

投稿

samusunn36
samusunn36

スコア13

test CHANGED
File without changes
test CHANGED
@@ -12,17 +12,15 @@
12
12
 
13
13
 
14
14
 
15
- ```C
15
+
16
16
 
17
17
  2番目の番号を入力したのちに、処理落ちする
18
-
19
- ```
20
18
 
21
19
 
22
20
 
23
21
  ### 該当のソースコード
24
22
 
25
-
23
+ ```C
26
24
 
27
25
  (#)include <stdio.h>
28
26
 
@@ -102,7 +100,7 @@
102
100
 
103
101
 
104
102
 
105
-
103
+ ```
106
104
 
107
105
  ### 試したこと
108
106
 

1

コンパイルの表示

2019/04/19 12:41

投稿

samusunn36
samusunn36

スコア13

test CHANGED
@@ -1 +1 @@
1
- どこが間違っているかがわからな
1
+ C言語 構造体ポインタ配列表示、処理落ちにつ
test CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
 
14
14
 
15
- ```
15
+ ```C
16
16
 
17
17
  2番目の番号を入力したのちに、処理落ちする
18
18
 
@@ -102,6 +102,8 @@
102
102
 
103
103
 
104
104
 
105
+
106
+
105
107
  ### 試したこと
106
108
 
107
109