本文主要是介绍pat-basic-1048-c语言,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目不是很难,但关键是:
B的长度小于A时要将B前端补零后再进行加密
#include<stdio.h>
#include<string.h>
int main()
{char a[110]={0},b[200]={0},c[110]={0},d[200]={0};int i,j,n,len_a,len_b,cnt,sum;cnt=0,sum=0;scanf("%s %s",a,b);len_a=strlen(a);len_b=strlen(b);if(len_a>len_b){for(i=0;i<len_a-len_b;i++)d[i]='0';strcat(d,b);strcpy(b,d);}len_b=strlen(b);for(i=len_b-1,j=len_a-1;i>=0;i--,j--){if(j<0){c[i]=b[i];}else{cnt++;if(cnt%2!=0){sum=a[j]-'0'+b[i]-'0';sum%=13;if(sum<10)c[i]=sum+'0';else if(sum==10)c[i]='J';else if(sum==11)c[i]='Q';else if(sum==12)c[i]='K';}else{sum=b[i]-a[j];if(sum>=0)c[i]=sum+'0';elsec[i]=sum+10+'0';}}}puts(c);return 0;
}
这篇关于pat-basic-1048-c语言的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!