某个公司采用公用电话传递数据信息,数据是小于8位的整数,为了确保安全,
在传递过程中需要加密,加密规则如下:
首先将数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字,
最后将第一位和最后一位数字交换。 请任意给定一个小于8位的整数,
然后,把加密后的结果在控制台打印出来。
题目要求:
A:数据是小于8位的整数
定义一个int类型的数据
int number = 123456;
B:加密规则
a:首先将数据倒序
结果 654321
b:然后将每位数字都加上5,再用和除以10的余数代替该数字
结果 109876
c:最后将第一位和最后一位数字交换
结果 609871
C:把加密后的结果输出在控制台
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 8
void reverse(char *pStr, int len);//数组逆序
void fun_b(char *pStr, int len);//加密
void exchang(char *head, char *tail);//交换数组头和尾的字符
int main(int argc, char const *argv[])
{
char str[MAX] = { '\0' };//存7申8
printf("Please input a number:\n");
scanf("%s", str);
int len = strlen(str); //字符数组长度-1 = 字符个数
char *end = str + len - 1; //指向最后一位的指针
//int num = atoi(str);
//printf("%d\n", num);
//倒序
reverse(str, len