文字列比較に関する質問です

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら

文字列比較に関する質問です

#1

投稿記事 by » 15年前

二つの文字列(コード)の類似性を視覚的に確認するためのプログラムについて質問です。
文字列コードはJISカナを使用します。
"31"で"ア"を表すので二つずつ要素を比較します。

例えば二つの

121A342S5465と
131A43225465
の配列を2要素ずつ比較して両方とも一致していたら1、どちらかでも違ったら0を配列に格納し、

000000
010000
000000
000000
000010
000001

というようにファイルに出力するプログラムを教えてください。(この出力結果は正しいです。)
一応自分でも組んでみたのですが通りません。プログラムはまだまだ初心者ですのでご教授の方よろしくお願いいたします。



int dot(char a[/url],char b[/url])
{
int i,j;
FILE *fp;
int ten[NUM];

fp =fopen("text1.txt", "w");

if(fp == NULL){
printf("ファイルをオープンできませんでした。\n");
return 1;
}
else{
printf("ファイルをオープンしました。\n");
}

printf("2つの文章を比較し結果をファイルに出力します。\n");

for(i=0; i<NUM;i++){
for(j=0; j<NUM; j++){
if(a[2i] == b[2j] && a[2i+1] == b[2j+1]){
ten[j] == 1;
}
else{
ten[j] == 0;
}
}
}
while(ten[/url] == NULL){
fprintf(fp, "%d", ten[/url]);
}

return 0;
}

MNS

Re:文字列比較に関する質問です

#2

投稿記事 by MNS » 15年前

何をシたいのかいまいちわからないのですが、少なくとも
if(a[2i] == b[2j] && a[2i+1] == b[2j+1]){ 
    ten[j] == 1;
}
else{
    ten[j] == 0;
}
これは
if(a[2i] == b[2j] && a[2i+1] == b[2j+1]){ 
    ten[j] = 1;
}
else{
    ten[j] = 0;
}
こうでしょう。

あと、規約はしっかりと読みましょう。

non

Re:文字列比較に関する質問です

#3

投稿記事 by non » 15年前

意味がわからない。

少なくとも、
a[2i]なんてのは変。

プログラムを添付するなら、全部添付して。

Re:文字列比較に関する質問です

#4

投稿記事 by » 15年前

申し訳ありませんでした。
解決できました。


閉鎖

“C言語何でも質問掲示板” へ戻る