杭电ACM2031 哪里错误了 http://acm.hdu.edu.cn/showproblem.php?pid=2031
#include<stdio.h>#include<string.h>voidmain(){longintn;intm,i,s,k;chara[100],b[]={'A'...
#include<stdio.h>
#include<string.h>
void main()
{
long int n;
int m,i,s,k;
char a[100],b[]={'A','B','C','D','E','F'};
while(scanf("%ld%d",&n,&m)!=EOF)
{
i=k=0;
if(n<0)
{
n=-n;
k=1;
}
while(n/m!=0)
{
if(n%m>=10)
a[i++]=b[n%m-10];
else
a[i++]=n%m+'0';
n=n/m;
}
a[i]=(n%m)+'0';
a[++i]='\0';
if(k==1)
printf("-");
s=strlen(a);
while(s--)
{
printf("%c",a[s]);
}
printf("\n");
}
} 展开
#include<string.h>
void main()
{
long int n;
int m,i,s,k;
char a[100],b[]={'A','B','C','D','E','F'};
while(scanf("%ld%d",&n,&m)!=EOF)
{
i=k=0;
if(n<0)
{
n=-n;
k=1;
}
while(n/m!=0)
{
if(n%m>=10)
a[i++]=b[n%m-10];
else
a[i++]=n%m+'0';
n=n/m;
}
a[i]=(n%m)+'0';
a[++i]='\0';
if(k==1)
printf("-");
s=strlen(a);
while(s--)
{
printf("%c",a[s]);
}
printf("\n");
}
} 展开
1个回答
展开全部
Input: 15 16
Correct Output: F
Your Output: ?
#include<stdio.h>
#include<string.h>
int main()
{
long int n;
int m,i,s,k;
char a[100],b[]={'A','B','C','D','E','F'};
while(scanf("%ld%d",&n,&m)!=EOF)
{
i=k=0;
if(n<0)
{
n=-n;
k=1;
}
while(n/m!=0)
{
if(n%m>=10)
a[i++]=b[n%m-10];
else
a[i++]=n%m+'0';
n=n/m;
}
if(n<10) a[i]=(n%m)+'0'; // 最后一位如果小于10, 则按数字处理
else a[i] = b[n%m-10]; // 如果最后以为大于等于10, 按字符处理
a[++i]='\0';
if(k==1)
printf("-");
s=strlen(a);
while(s--)
{
printf("%c",a[s]);
}
printf("\n");
}
}
Correct Output: F
Your Output: ?
#include<stdio.h>
#include<string.h>
int main()
{
long int n;
int m,i,s,k;
char a[100],b[]={'A','B','C','D','E','F'};
while(scanf("%ld%d",&n,&m)!=EOF)
{
i=k=0;
if(n<0)
{
n=-n;
k=1;
}
while(n/m!=0)
{
if(n%m>=10)
a[i++]=b[n%m-10];
else
a[i++]=n%m+'0';
n=n/m;
}
if(n<10) a[i]=(n%m)+'0'; // 最后一位如果小于10, 则按数字处理
else a[i] = b[n%m-10]; // 如果最后以为大于等于10, 按字符处理
a[++i]='\0';
if(k==1)
printf("-");
s=strlen(a);
while(s--)
{
printf("%c",a[s]);
}
printf("\n");
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询