質問編集履歴

4

2020/10/24 11:30

投稿

tatama
tatama

スコア0

test CHANGED
File without changes
test CHANGED
@@ -60,11 +60,11 @@
60
60
 
61
61
  strcpy(newstr,str2[n]);
62
62
 
63
+ new str[n+1] = ‘.’;
64
+
63
65
  printf("%s\n", newstr); /* 新しい文字列全体を表示 */
64
66
 
65
67
  }
66
-
67
- printf(" ");
68
68
 
69
69
  /* ここで、newstrの文字数を表示 */
70
70
 

3

2020/10/24 11:30

投稿

tatama
tatama

スコア0

test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  ### 発生している問題・エラーメッセージ
8
8
 
9
-
9
+ コンパイルはできたのですが、入力しても何も表示されず、文字数も1になってしまいました
10
10
 
11
11
  ### 該当のソースコード
12
12
 
@@ -32,7 +32,9 @@
32
32
 
33
33
  int i;
34
34
 
35
+ /* ここにその他の変数宣言 */
36
+
35
- int count = 0;
37
+ int n;
36
38
 
37
39
  printf( "Input %d words: \n", NUM );
38
40
 
@@ -48,19 +50,33 @@
48
50
 
49
51
  /* 入力済みのstr2をもとに、newstrを作成する処理を書く */
50
52
 
51
- newstr = str2;
53
+ /* 単語間にスペースを入れる事と、最後はピリオドで終わることに注意 */
52
54
 
53
- printf("%s\n", newstr);
55
+ for(n = 0;n < i;n++){
54
56
 
55
57
 
56
58
 
57
-
59
+ strcpy(str2[n]," ");
58
60
 
61
+ strcpy(newstr,str2[n]);
62
+
63
+ printf("%s\n", newstr); /* 新しい文字列全体を表示 */
64
+
65
+ }
66
+
67
+ printf(" ");
68
+
69
+ /* ここで、newstrの文字数を表示 */
70
+
59
- printf("Total: %d characters\n",count+1);
71
+ printf("Total: %d characters\n",strlen(newstr));
60
72
 
61
73
  return 0;
62
74
 
63
75
  }
76
+
77
+
78
+
79
+
64
80
 
65
81
 
66
82
 

2

2020/10/24 11:23

投稿

tatama
tatama

スコア0

test CHANGED
File without changes
test CHANGED
@@ -1,32 +1,10 @@
1
1
  ### 前提・実現したいこと
2
2
 
3
- C言語で文章を入力し、改行空白に変え最後にピリオドを表示させたいです あと、最後に文字数の合計を表示させたいです
3
+ C言語で単語4回入力し、スペース入れそれを繋げて最後にピリオドを表示させたいです あと、最後に文字数の合計を表示させたいです
4
4
 
5
5
 
6
6
 
7
7
  ### 発生している問題・エラーメッセージ
8
-
9
-
10
-
11
- prog03.c: In function ‘main’:
12
-
13
- prog03.c:17:16: warning: comparison between pointer and integer
14
-
15
- 17 | if(str2[i] == '\n')str2[i] =' ';
16
-
17
- | ^~
18
-
19
- prog03.c:17:32: error: assignment to expression with array type
20
-
21
- 17 | if(str2[i] == '\n')str2[i] =' ';
22
-
23
- | ^
24
-
25
- prog03.c:23:10: error: assignment to expression with array type
26
-
27
- 23 | newstr = str2;
28
-
29
- | ^
30
8
 
31
9
 
32
10
 
@@ -64,10 +42,6 @@
64
42
 
65
43
  scanf("%s", str2[i]);
66
44
 
67
- if(str2[i] == '\n')str2[i] =' ';
68
-
69
- count++;
70
-
71
45
  }
72
46
 
73
47
 

1

2020/10/24 10:41

投稿

tatama
tatama

スコア0

test CHANGED
@@ -1 +1 @@
1
- 改行を空白に置き換える方法が分かりません
1
+ 入力した単語に空白を入れて文章を作る方法が分かりません
test CHANGED
File without changes