【网络安全】没有网络安全就没有国家安全。对网络中传输的数据进行加密是实现网络安全的一项重要举措,如发送方先对自身IP地址(明文)加密,之后再传输加密后的密文,接收方收到密文后解密,方可得到发送方的真实IP地址(明文)。IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数,分别称为第1,2,3,4段,如IP地址“192.168.1.123”。小编同学设计了一种简单的加密算法,即:IP地址中第1,2段数据均采用加1之后的结果作为密文,第3,4段数据均采用逆序存储之后的结果作为密文。如明文是“192.168.5.12”,密文是“193.169.500.210”,其中明文中的“5”和“12”分别看作是三位数的表示形式:“005”,“012”。现请你根据小编同学提供的段号及明文(该段数据值)编程实现加密算法。
#include<stdio.h>
int main()
{
int a, b;
scanf_s("%d%d", &a,& b);
a += 1; b += 1;
printf("%d.%d.", a, b);
int c[]={0,0,5}, i, j, temp;
int d[] = { 0, 1, 2 };
for (i = 0; i < 2; i++) {
for (j = 0; j < 2 - i; j++) {
if (c[j] < c[j + 1]) {
temp = c[j];
c[j] = c[1 + j];
c[j + 1] = temp;
}
}
}
for (i = 0; i < 2; i++) {
for (j = 0; j < 2 - i; j++){
if (d[j] < d[j + 1]) {
temp = d[j];
d[j] = d[1 + j];
d[j + 1] = temp;
}
}
}
for (i = 0; i < 3; i++) {
printf("%d",c[i]);
}
printf(".");
for (i = 0; i < 3; i++) {
printf("%d", d[i]);
}
return 0;
}
运行结果
与冒泡排序有相似之处,可去B站找视频学习