質問編集履歴

1

コードの修正

2016/10/12 03:40

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -18,12 +18,156 @@
18
18
 
19
19
  #include <stdlib.h>
20
20
 
21
+ #include <stdbool.h>
22
+
21
23
  #include <time.h>
22
24
 
23
25
  #include <limits.h>
24
26
 
25
27
 
26
28
 
29
+ bool putMaxVal1(int array[],int size){
30
+
31
+ if(size<=0){ return false; }
32
+
33
+ int maxVal=array[0];
34
+
35
+ int i;
36
+
37
+ for(i=1; i<size; i++){
38
+
39
+ if(array[i]>maxVal) maxVal=array[i];
40
+
41
+ }
42
+
43
+ printf("maxVal1 = %d\n",maxVal);
44
+
45
+ return true;
46
+
47
+ }
48
+
49
+
50
+
51
+ bool putMaxVal2(int array[],int size){
52
+
53
+ if(size<=0){ return false; }
54
+
55
+ int maxVal=INT_MIN ;
56
+
57
+ int i;
58
+
59
+ for(i=0; i<size; i++){
60
+
61
+ if(array[i]>maxVal) maxVal=array[i];
62
+
63
+ }
64
+
65
+ printf("maxVal2 = %d\n",maxVal);
66
+
67
+ return true;
68
+
69
+ }
70
+
71
+
72
+
73
+ int main(void){
74
+
75
+ int array[100]={0};
76
+
77
+
78
+
79
+ srand(time(NULL));
80
+
81
+ int i;
82
+
83
+ for(i=0; i<sizeof array/sizeof array[0]; i++){
84
+
85
+ array[i]=1+rand()%1000;
86
+
87
+ printf("[%3d] %3d\n",i+1,array[i]);
88
+
89
+ }
90
+
91
+ printf("maxVal1:%s\n",putMaxVal1(array,sizeof array/sizeof array[0])?"TRUE":"FALSE");
92
+
93
+ printf("maxVal2:%s\n",putMaxVal2(array,sizeof array/sizeof array[0])?"TRUE":"FALSE");
94
+
95
+
96
+
97
+ printf("maxVal1:%s\n",putMaxVal1(array,-1)?"TRUE":"FALSE");
98
+
99
+ printf("maxVal2:%s\n",putMaxVal2(array,-1)?"TRUE":"FALSE");
100
+
101
+
102
+
103
+ return 0;
104
+
105
+ }
106
+
107
+ ```
108
+
109
+
110
+
111
+
112
+
113
+
114
+
115
+ ###質問
116
+
117
+ 0. 二つの関数(maxVal1 と maxVal2)のどちらのうがいいでしょうか.
118
+
119
+ > 質問内容を変更す.
120
+
121
+ 「どちらを推奨しますか?」「どちらのほうが個人的に好きですか?」
122
+
123
+
124
+
125
+ 2.引数sizeに-1を入れたところ二つの関数には以下のような違いが見られましたが,これは処理系によって違うのでしょうか.
126
+
127
+ ```
128
+
129
+ maxVal1 = 984
130
+
131
+ maxVal2 = -2147483648
132
+
133
+ ```
134
+
135
+
136
+
137
+ ###補足など
138
+
139
+ 質問について:
140
+
141
+ 「いいでしょうか」という質問が不適切であるという指摘をいただいた為,「推奨しますか?」,「どちらのコードのほうが好きですか?」という質問に変更します.
142
+
143
+
144
+
145
+ コードについて:コードを修正しました.修正前コードは以下の通りです.
146
+
147
+ ```C
148
+
149
+
150
+
151
+ /*このコードは修正前のものです.*/
152
+
153
+ /*このコードは修正前のものです.*/
154
+
155
+ /*このコードは修正前のものです.*/
156
+
157
+ /*このコードは修正前のものです.*/
158
+
159
+
160
+
161
+ #include <stdio.h>
162
+
163
+ #include <stdlib.h>
164
+
165
+ #include <time.h>
166
+
167
+ #include <limits.h>
168
+
169
+
170
+
27
171
  int maxVal1(int array[],int size){
28
172
 
29
173
  int maxVal;
@@ -95,27 +239,3 @@
95
239
  }
96
240
 
97
241
  ```
98
-
99
-
100
-
101
-
102
-
103
- ###質問
104
-
105
- 0. 二つの関数(maxVal1 と maxVal2)のどちらのほうがいいでしょうか.
106
-
107
-
108
-
109
- 2.引数sizeに-1を入れたところ二つの関数には以下のような違いが見られましたが,これは処理系によって違うのでしょうか.
110
-
111
- ```
112
-
113
- maxVal1 = 984
114
-
115
- maxVal2 = -2147483648
116
-
117
- ```
118
-
119
-
120
-
121
- ###補足など