質問編集履歴

3

誤字

2019/07/24 09:52

投稿

MAIHIME
MAIHIME

スコア7

test CHANGED
File without changes
test CHANGED
@@ -31,6 +31,8 @@
31
31
  {
32
32
 
33
33
  char FLname[64];
34
+
35
+ size_t len;
34
36
 
35
37
 
36
38
 

2

誤字

2019/07/24 09:52

投稿

MAIHIME
MAIHIME

スコア7

test CHANGED
File without changes
test CHANGED
@@ -31,8 +31,6 @@
31
31
  {
32
32
 
33
33
  char FLname[64];
34
-
35
- size_t len;
36
34
 
37
35
 
38
36
 

1

質問の仕方の改善

2019/07/24 09:49

投稿

MAIHIME
MAIHIME

スコア7

test CHANGED
@@ -1 +1 @@
1
- 入力した文字列から特定の文字の数を数えるプログラム(他もあり)
1
+ 入力した文字列から特定の文字の数を数えるプログラムで数えてくれない。
test CHANGED
@@ -1,24 +1,22 @@
1
- 入力した文字列から特定の文字の数を数えてその入力した文字数に点数として足していき最終的に最初に入力した数字が6の倍数だった場合1.3倍して最終点数をだすというプログラムなのですがかうまくきません。プログム自体苦手ネット調べながら縫い合わせ状態で作ったのでめちゃくちゃなもなってるかもしれなく(てか絶対なってる)専門用語とかぽぽん回答言われてもわからな可能性がかなりあります(笑)よろくお願
1
+ 入力した文字列から特定の文字の数を数えてプログラムで同じよう質問(https://teratail.com/questions/62066)のベストアンサーを真似て作ったのですがcount_ter1とcouunt_str3の飛だ先のint a;やint c;が初期化されてないとエーがて、=0=NULL初期化してみたのですが、文字列中文字は0文字です。となってしまい一向に数えてくませ。どこかしいのでしょうか?
2
2
 
3
3
  ーーー追記ーーー
4
4
 
5
- str1は1文字あるごとに2点足
5
+ c言語を習ってて出てきた問題の自己応用書いたもので
6
6
 
7
- str31文字あるごとに1点足
7
+ ソフトとしてc++のソフトでcを書いていま
8
-
9
-
10
-
11
- ほかプログラム内にコメントで記載
12
8
 
13
9
  ーーーーーーーー
14
10
 
11
+ また質問形式がおかしかったらおかしいと言ってくれると嬉しいです。
12
+
15
13
  ### 該当のソースコード
16
14
 
15
+ ```
17
16
 
17
+ #include<stdio.h>
18
18
 
19
- #include<stdio.h>//半角の#にすると質問の所で仕切られてしまうので全角になってる
20
-
21
- include<string.h>//上記と同じ
19
+ #include<string.h>
22
20
 
23
21
  int count_ter1(const char* FLname, const char* str1);
24
22
 
@@ -38,23 +36,11 @@
38
36
 
39
37
 
40
38
 
41
- printf("名前をアルファベットで入力してください->");
39
+ printf("アルファベットで64文字以内してください->");
42
40
 
43
41
  fgets(FLname, sizeof(FLname), stdin);
44
42
 
45
43
  FLname[strlen(FLname) - 1] = '\0';
46
-
47
- printf("%sさんですね!\n", FLname);
48
-
49
- printf("\n");
50
-
51
-
52
-
53
- len = strlen(FLname);
54
-
55
- printf("あなたの名前は%d文字です\n",len);
56
-
57
- printf("あなたの初期ポイントは%d点です\n", len);
58
44
 
59
45
  printf("\n");
60
46
 
@@ -74,7 +60,7 @@
74
60
 
75
61
  num_ter1 = count_ter1(FLname, str1);
76
62
 
77
- printf("%d\n",num_ter1);//何文字あるとでない。仮でちゃんと数えてるか試すために書いたプログラム
63
+ printf("drは%d文字ありました\n",num_ter1);
78
64
 
79
65
  printf("\n");
80
66
 
@@ -82,35 +68,9 @@
82
68
 
83
69
  num_ter3 = count_ter3(FLname, str3);
84
70
 
85
- printf("%d\n", num_ter3);//ここも上記と同じく
71
+ printf("auoは%d文字ありました\n", num_ter3);
86
72
 
87
73
  printf("\n");
88
-
89
-
90
-
91
-
92
-
93
-     //計算ができない。そもそも点数足してないが・・・笑
94
-
95
- if (len % 6 == 0)
96
-
97
- {
98
-
99
- len* 1.3;
100
-
101
- printf("あなたの名前は6の倍数なので最終ポイントが1.3倍になります\n");
102
-
103
- printf("あなたの最終ポイントは%5.1f点です\n", len);
104
-
105
- }
106
-
107
- else
108
-
109
- {
110
-
111
- printf("あなたの最終ポイントは%d点です\n", len);
112
-
113
- }
114
74
 
115
75
 
116
76
 
@@ -132,7 +92,7 @@
132
92
 
133
93
  {
134
94
 
135
- if (strchr(str1, a))//aが初期化されてないと言われた。
95
+ if (strchr(str1, a))
136
96
 
137
97
  {
138
98
 
@@ -160,9 +120,7 @@
160
120
 
161
121
  {
162
122
 
163
- if (strchr(str3, c))//cが初期化されてないと言われた。
123
+ if (strchr(str3, c))
164
-
165
-
166
124
 
167
125
  {
168
126
 
@@ -176,7 +134,7 @@
176
134
 
177
135
  }
178
136
 
179
-
137
+ ```
180
138
 
181
139
  ### 補足情報
182
140