文字を暗号化するプログラム
auです。
今回はアルファベットを入力して、数字を入力するとその分だけ→にずれるプログラムを組みました。
#include <stdio.h> int main(void) { int slide = 0; int over = 0; char ch[128]; char word[128]; char n_word[128]; char all_word[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; printf("半角アルファベット: "); scanf("%[^\n]", word); printf("ずらす文字数: "); scanf("%d", &slide); for (int i = 0; word[i] != NULL; i++) { n_word[i] = word[i]; for (int j = 0; j < 52; j++) { if (n_word[i] == all_word[j]) { over = j + slide; if (over >= 52) { over -= 52; } n_word[i] = all_word[over]; break; } } } printf("%s\n", n_word); return 0; } // 実行結果 半角アルファベット: Hello World! ずらす文字数: 3 Khoor Zruog!
Zを入力した際にaに戻る処理をしていなくて、少し戸惑いましたがうまく動作することができました。