在主程序中以自己的姓名拼音的连续大写英文字母初始化一个my_name[ ]字符数组,作为原码,以自己的9位学号为密钥定义整形数组变量key[9],编写加密函数void encrypt(char*p,int n),其中n为名字my_name[ ]字符数组的元素个数,对my_name逐个字符进行加密变换,即my_name[1]=my_name[1]+ key[1],my_name字符超出9个的尾部不做变换,在主程序中调用encrypt函数,并输出加密后的字符数组元素。编写程序并完成上机调试实现以上功能要求。(希望有人可以answer一下me,三克油!♥)
1条回答 默认 最新
- 浪客 2022-06-19 12:26关注
char key[9]; void encrypt(char *p,int n) { for (int i = 0; i < n && i < 9; i++) { *(p + i) += key[i]; } } int main() { char my_name[30], ch; int len = 0; while ((ch = getchar()) != '\n') my_name[len++] = ch; my_name[len] = '\0'; for (int i = 0; i < 9; i++) { key[i] = getchar(); } encrypt(my_name, len); printf("%s\n", my_name); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报