我正在上 CS50x 课程,但我遇到了一个小故障。我问他们发生了什么事,没有人知道发生了什么事。
每当我尝试打印小写 f 时,它总是显示为 ?。尝试将 23 作为参数和abcdefghijklmnopqrstuvwxyz
输入。搞砸了 这是代码:
#include <stdio.h>
#include <stdlib.h>
#include <cs50.h>
#include <string.h>
#include <ctype.h>
int main (int argc, string argv[]){
if(argc !=2){
return 1;
}
string x = GetString();
int key = atoi(argv[1]);
for(int a = 0, n = strlen(x); a < n; a++){
char i = key + x[a];
if(islower(x[a])){
if(i > 122){
i = (i-122) + 96;
}
}
if(isupper(x[a])){
if(i > 90){
i = (i-90) + 64;
}
}
printf("%c", i);
}
printf("\n");
return 0;
}