C语言指针实现小于8位数字加密
来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/06/28 09:51:17
C语言指针实现小于8位数字加密
加密规则如下:首先先将数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字,最后将第一位和最后一位数字交换
加密规则如下:首先先将数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字,最后将第一位和最后一位数字交换
![C语言指针实现小于8位数字加密](/uploads/image/z/2655981-45-1.jpg?t=C%E8%AF%AD%E8%A8%80%E6%8C%87%E9%92%88%E5%AE%9E%E7%8E%B0%E5%B0%8F%E4%BA%8E8%E4%BD%8D%E6%95%B0%E5%AD%97%E5%8A%A0%E5%AF%86)
#include
#include
#include
#include
main()
{
char *input_number = NULL,*temp = NULL,*p = NULL;;
char c;
int i = 0,num = 0;
input_number = (char *)malloc(10);
memset(input_number,0,10);
temp = (char *)malloc(10);
memset(temp,0,10);
printf("请输入8位数字:\n");
/*输入要加密的数据*/
while(i < 8)/*只取8个字符的数据*/
{
c = getchar();
if(c = '0')/*只从中取整数*/
{
input_number[i] = c;
i++;
}
}
input_number[i] = '\0';
p = &input_number[7];
/*将输入的数据倒序存储*/
i = 0;
while(i < 8)
{
temp[i] = *p;
p --;
i ++;
}
temp[i] = '\0';
/*加密运算*/
i = 0;
for(i = 0; i < 8; i ++)
{
num = temp[i] - 48;/*字符转换为整形*/
num = num + 5;
num = num % 10;
temp[i] = num + 48;/*整形转换为字符*/
}
/*第一位和最后一位数据交换*/
p = temp;
temp[8] = *p;
temp[0] = num + 48;
/*得到结果*/
sprintf(input_number,"%s",temp);
printf("input_number = %s\n",input_number);
/*释放*/
if(NULL != temp)
{
free(temp);
temp = NULL;
}
if(NULL != input_number)
{
free(input_number);
input_number = NULL;
}
return 0;
}
#include
#include
#include
main()
{
char *input_number = NULL,*temp = NULL,*p = NULL;;
char c;
int i = 0,num = 0;
input_number = (char *)malloc(10);
memset(input_number,0,10);
temp = (char *)malloc(10);
memset(temp,0,10);
printf("请输入8位数字:\n");
/*输入要加密的数据*/
while(i < 8)/*只取8个字符的数据*/
{
c = getchar();
if(c = '0')/*只从中取整数*/
{
input_number[i] = c;
i++;
}
}
input_number[i] = '\0';
p = &input_number[7];
/*将输入的数据倒序存储*/
i = 0;
while(i < 8)
{
temp[i] = *p;
p --;
i ++;
}
temp[i] = '\0';
/*加密运算*/
i = 0;
for(i = 0; i < 8; i ++)
{
num = temp[i] - 48;/*字符转换为整形*/
num = num + 5;
num = num % 10;
temp[i] = num + 48;/*整形转换为字符*/
}
/*第一位和最后一位数据交换*/
p = temp;
temp[8] = *p;
temp[0] = num + 48;
/*得到结果*/
sprintf(input_number,"%s",temp);
printf("input_number = %s\n",input_number);
/*释放*/
if(NULL != temp)
{
free(temp);
temp = NULL;
}
if(NULL != input_number)
{
free(input_number);
input_number = NULL;
}
return 0;
}
C语言指针实现小于8位数字加密
用C语言指针数组编程实现:
C语言编程 将四位数字分为一组进行加密,其中第一位和第三数字交换,第二位和第四位数字交换
用C语言的指针(!)实现①输入十个数字,按从小到大的顺序排序后并输出②输入十个字符,按字典顺序排序输
汇编标志寄存器标志位的C语言函数实现
怎么用C语言实现保留小数很多位
为什么C语言编程给英文字母加密 就字母+4 我弄完输出的是一堆数字 1244976124497...
C语言,用指向函数指针的知识实现两个函数求和的功能
C语言2个指针指向的值怎么样实现相加和相乘?
求编一个C语言程序 实现的效果是,将26个字母头尾对换,成为一个加密运算那种
C语言指针**p是什么意思
C 语言中如何定义一个数字占4位