ここから本文です

このプログラムは暗号化された文章を読み込み、数列を読み込み、数字の分だけ文字...

アバター

ID非公開さん

2017/10/2113:16:08

このプログラムは暗号化された文章を読み込み、数列を読み込み、数字の分だけ文字数を戻す(例えばxyzと123が読み込まれれば、wwwとなる)プログラムです。

数字を読み込む際のwhile文の条件がよくわからないので、教えてください

STRING.txt,数列,数字,r&quot,プログラム,fgetc,STRING.txt&quot

閲覧数:
114
回答数:
3

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

tre********さん

2017/10/2115:21:20

/*

難しいプログラムですね…。
こんなかんじではダメ?

-----STRING.txtの中身-----
Igopp"Zssng%

-----key.txtの中身-----
123412341234

-----実行結果-----
Hello World!

*/
#include <stdio.h>

int main(void) {
FILE *string_fp, *key_fp;
int c, key;

string_fp = fopen("STRING.txt", "r");
if (!string_fp) {
perror("STRING.txtを開けませんでした:");
return -1;
}

key_fp = fopen("key.txt", "r");
if (!key_fp) {
perror("key.txtを開けませんでした:");
return -1;
}

while ( (c = fgetc(string_fp)) != EOF && (key = fgetc(key_fp)) != EOF ) {
// 暗号文字列とキーの両方を読み込めている間
printf("%c", c == '\n' ? '\n' : c - (key - '0'));//改行文字はそのまま、それ以外は復号して表示
}

fclose(string_fp);
fclose(key_fp);

return 0;
}

  • アバター

    質問者

    ID非公開さん

    2017/10/2115:40:12

    fgetsは数字にも使えるんですか?
    最後のprintfがよくわからないです

  • その他の返信を表示

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この質問は投票によってベストアンサーに選ばれました!

ベストアンサー以外の回答

1〜2件/2件中

並び替え:回答日時の
新しい順
|古い順

dia********さん

2017/10/2113:29:45

「0が出てくるまで読め。」

うわぁ、危険だ(笑)

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

bak********さん

2017/10/2113:25:50

読み込むファイルがどんな形式かによる

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる