#####やりたい事
・strcatを使わず1つの配列に繰り返し数分文字列を追加していくというロジックを実装したい。
ex)
表示回数:3
入力:[hellow!]
出力結果:[hellow! hellow! hellow!]
#####プログラムコード
C
1#include <stdio.h> 2#include <string.h> 3#include <ctype.h> 4int main(void){ 5 int num; 6 char str[1000]; 7 char buf[1000] = "hellow! "; 8 fgets(str,sizeof(str),stdin); 9 sscanf(num,"%d",str); 10 11 for(int i = 0; i < num; i++){ 12 /*ここのロジックが不明*/ 13 } 14} 15
※スペースを代入するロジックは未実装です。
#####不明点
・配列に配列を代入するができない
->str += bufは受け付けなかった。
#####補足
実装したかった挙動は、"for文を回した分単語を表示、単語間にはスペースを入れる"という物でstrcatを使う事で実装できた。
C
1#include <stdio.h> 2#include <string.h> 3 4#define ARRAY_SIZE (10) 5 6int main(void) 7{ 8 char str[ARRAY_SIZE] = "Hello!"; 9 char buf[1000]; 10 int num; 11 12 fgets(buf,sizeof(buf),stdin); 13 sscanf(buf,"%d",&num); 14 15 for( int i = 1; i < num; i++) 16 strcat(str, " Hellow!"); 17 18 puts(str); 19 20 return 0; 21}
######お詫び
この度、私の誤解を招くような表現により多数の方々に混乱を生じさせてしまいました。
ご迷惑をおかけして申し訳ありませんでした。
よろしくお願いします。
回答3件
あなたの回答
tips
プレビュー