На 2-й неделе CS50 и я ударил стену. Мой код должен вызывать пользователя для открытого текста, а затем печатать простой cypher на следующей строке. Проблема в том, что мой код продолжает печатать точный ввод для пользователя, а не скремблировать. Мой код ниже.Простая программа Cypher не работает (CS50)
Примечание: ошибка в моем коде, вероятно, будет отсутствовать в цикле for, внутри соответствующих функций printf.
#include <stdio.h>
#include <cs50.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
int main (int argc, string argv[]){
if (argc != 2){
printf("You must enter two arguments, the second being a single digit integer!\n");
return 1;
}
int key = atoi(argv[1]);
printf("What do you want to encrpyt?");
string s = get_string();
for(int i=0; i < strlen(s); i++){
if (isupper(s[i])==true){
printf("%c",((s[i] + key)));
}
if (islower(s[i])==true){
printf("%c",s[i] + key);
}
else {
printf("%c",s[i]);
}
}
}