太难了???? 这道题有一个坑,测试点2和测试点5过不去,因为它规定的是当没有数字时要用0来代替
get到的新知识:
char a[101]
a[i]=9; 如果输出%d的a[i] 那么输出的就是数字9 但是如果输出%c的a[i]那么输出错误
操作a[i]+='0' 结果输出%c的a[i]就变成了字符‘9’
char里边可以用来存整形的变量
#include<stdio.h>
#include<string.h>
int main()
{
char a[201]={0};
char b[201]={0};
scanf("%s %s",a,b);
int count=0;
int i,j,k;
int temp;
int str_lena=strlen(a);
int str_lenb=strlen(b);
int str_len=str_lena>str_lenb?str_lena:str_lenb;
char c[str_len+1];
for(k=str_len-1,i=str_lena-1,j=str_lenb-1;k>=0;k--,i--,j--)
{
count++;
if(count%2==1)
{
temp=(i>=0?a[i]-'0':0)+(j>=0?b[j]-'0':0);
temp=temp%13;
}
else
{
temp=((j>=0?b[j]-'0':0)-(i>=0?a[i]-'0':0)+10)%10;
}
c[k]=temp;
}
for(i=str_len-1;i>=0;i--)
{
switch(c[i])
{
case 10:c[i]='J';break;
case 11:c[i]='Q';break;
case 12:c[i]='K';break;
default: c[i]+='0';
}
}
c[str_len]=0;
printf("%s",c);
printf("\n");
return 0;
}