質問編集履歴

3

コードの修正

2019/05/08 02:55

投稿

tmtmmm
tmtmmm

スコア24

test CHANGED
File without changes
test CHANGED
@@ -72,7 +72,7 @@
72
72
 
73
73
  else{
74
74
 
75
- for(j=0;j<100;j++){
75
+ for(j=0;j==k;j++){
76
76
 
77
77
  printf("番号:%d,時間:%f,値:%f\n",j+1,max_time[j],max_score[j]);
78
78
 

2

直したコードをかいてあります。

2019/05/08 02:55

投稿

tmtmmm
tmtmmm

スコア24

test CHANGED
File without changes
test CHANGED
@@ -4,11 +4,11 @@
4
4
 
5
5
  txtファイルからデータを取得し最大のscoreを出したいです。一応、0.5以上差が開いたら、新しい最大値をだしたいのでk++にしています。
6
6
 
7
+ 変更後のコードです
8
+
9
+ ```c
7
10
 
8
11
 
9
- ### 該当のソースコード
10
-
11
- ```c
12
12
 
13
13
  #include<stdio.h>
14
14
 
@@ -48,8 +48,6 @@
48
48
 
49
49
  void max(struct lv *head){
50
50
 
51
- for(i=0;i<100;i++){
52
-
53
51
  if(head->score>max_score[k]){
54
52
 
55
53
  max_score[k]=head->score;
@@ -60,7 +58,7 @@
60
58
 
61
59
  else{
62
60
 
63
- if(head->score - max_score[k]>0.5){
61
+ if(max_score[k]-head->score >0.5){
64
62
 
65
63
  k++;
66
64
 
@@ -68,13 +66,17 @@
68
66
 
69
67
  }
70
68
 
71
- }
69
+ if(head->next !=NULL)
72
70
 
73
- max(head->next); //再帰呼び出し <-ここを消すと停止はしません
71
+ max(head->next);
74
72
 
75
- for(j=0;j=i;j++){
73
+ else{
76
74
 
75
+ for(j=0;j<100;j++){
76
+
77
- printf("%d,時間:%f,値:%f",j+1,max_time[j],max_score[j]);
77
+ printf("番号:%d,時間:%f,値:%f\n",j+1,max_time[j],max_score[j]);
78
+
79
+ }
78
80
 
79
81
  }
80
82
 
@@ -96,7 +98,7 @@
96
98
 
97
99
  if ((fp=fopen("s:\jx18250_0426_100Hz.txt","r"))==NULL){
98
100
 
99
- printf("Cant open file %s\n", "aaa.txt"); /*オープンに失敗したらメッセージ表示*/
101
+ printf("Cant open file %s\n", "a.txt"); /*オープンに失敗したらメッセージ表示*/
100
102
 
101
103
  }
102
104
 
@@ -120,8 +122,6 @@
120
122
 
121
123
  ```
122
124
 
123
-
124
-
125
125
  ### 試したこと
126
126
 
127
- max()の関数のところで止まるようです。
127
+ max()のところはとまるのはなくなりましたが、時間、値が0.000のままです。txtからの時間、値がとりだせていることは確認済みです。

1

詳細

2019/05/08 02:40

投稿

tmtmmm
tmtmmm

スコア24

test CHANGED
File without changes
test CHANGED
@@ -70,7 +70,7 @@
70
70
 
71
71
  }
72
72
 
73
- max(head->next); //再帰呼び出し
73
+ max(head->next); //再帰呼び出し <-ここを消すと停止はしません
74
74
 
75
75
  for(j=0;j=i;j++){
76
76