C语言数字加密程序:解决只输出三个数字的问题

这段代码实现了一个简单的数字加密程序,它将输入的四位数字进行加密,并将加密后的数字输出。

#include <stdio.h>
int main()
{
    int a,i,aa[4],t;
    printf("请输入四位数字:");
    scanf("%d",&a);
    aa[0]= a/1000;
    aa[1]= a/ 100 % 10;
    aa[2]= a / 10 % 10;
    aa[3]= a % 10;
    for(i=0;i<4;i++)
    {
        aa[i]+=5;
        aa[i]%=10;
    }
    for(i=0;i<2;i++)
    {
        t=aa[i];
        aa[i]=aa[3-i];
        aa[3-i]=t;
    }
    printf("加密后的数字:");
    for(i=0;i<3;i++)
        printf("%d",aa[i]);
}

问题:

这个程序只输出了三个数字,是因为在最后输出加密后的数字时,只遍历了数组的前三个元素,没有输出最后一个元素。

解决方案:

修改代码如下即可输出全部四个数字:

printf("加密后的数字:");
for(i=0;i<4;i++)
    printf("%d",aa[i]);

解释:

修改后的代码将循环遍历数组的全部四个元素,确保每个数字都被输出。

总结:

通过修改循环遍历的条件,我们可以解决程序只输出三个数字的问题,从而成功输出完整的加密结果。

C语言数字加密程序:解决只输出三个数字的问题

原文地址: https://www.cveoy.top/t/topic/niCO 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录