こんにちは。2度目の質問です。
現在、課題でBM法を作ってます。ところが、途中でつまづきました。
以下がプログラムの一部です。
ーーーーーーー
char *Text; /テキストの文字列/
char *Pattern; /パターンの文字列/
int Tnum,Pnum; /*それぞれの文字数*/ printf("What is Text?"); printf("1"); scanf("%s",Text); printf("2"); printf("Text=%s\n",Text); printf("3"); Tnum=strlen(Text); printf("4"); printf("Text number=%d\n",Tnum); printf("5"); printf("What is Pattern?"); printf("1"); scanf("%s",Pattern); printf("2"); printf("Pattern=%s\n",Pattern); printf("3"); Pnum=strlen(Pattern); printf("4"); printf("Pattern number=%d\n",Pnum); printf("5");
ーーーーーーー
そうすると、実行結果が以下のようになります。
printfで1~5まで表示されているのは、どこまで正しく実行されるかを表すもので、内容には関係ありません。気になるのは、なぜTextの文は正しく実行されて、Patternの文は正しく実行されないのかというところです。
TextとPatternのそれぞれの塊の前後を変えると、Patternは実行され、Textは実行されません。
回答の程宜しくお願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/09/27 05:01