質問編集履歴

1

ソースコードを書きなおしました。。。 コンパイルはできますが「aは0文字です」と表示されてしまします。

2020/12/17 13:38

投稿

kanato_gungun
kanato_gungun

スコア0

test CHANGED
File without changes
test CHANGED
@@ -14,44 +14,66 @@
14
14
 
15
15
  include <stdio.h>
16
16
 
17
+
18
+
17
- include <stdlib.h>
19
+ int main(void)
18
20
 
19
21
 
20
22
 
21
- int main(void){
22
23
 
23
- FILE *fp;
24
24
 
25
- char text_name[100];
26
-
27
- int i=0, count;
25
+ {
28
-
29
- scanf("%s", text_name);
30
-
31
- fp=fopen(text_name, "r");
32
26
 
33
27
 
34
28
 
35
- while(fgets(text, 81, fp)!=NULL){
29
+ int a_count=0;
36
30
 
37
- while(text[i]!='\n'){
31
+ char fname[100];
38
32
 
39
- if(text[i]=='a'){
33
+ int i;
40
34
 
41
- count++;
35
+ FILE*fp;
42
36
 
43
- }
44
37
 
45
- i++;
46
38
 
47
- }
39
+ printf("ファイル名:");
48
40
 
49
- }
41
+ scanf("%s",fname);
50
42
 
51
- printf("小文字aの数 = %d\n", count);
52
43
 
53
- fclose(fp);
54
44
 
45
+ fp=fopen(fname,"r");
46
+
47
+ if(fp==NULL){
48
+
49
+ printf("指定したファイルは開けません.");
50
+
55
- return 0;
51
+ return (1);
56
52
 
57
53
  }
54
+
55
+
56
+
57
+ for(i=0; fname[i]!='\0'; i++){
58
+
59
+ if(fname[i] == 'a'){a_count++;}
60
+
61
+ break;
62
+
63
+ }
64
+
65
+
66
+
67
+ fclose(fp);
68
+
69
+
70
+
71
+ printf("aは%d文字\n",a_count);
72
+
73
+
74
+
75
+ return 0;
76
+
77
+
78
+
79
+ }