用C语言将k进制的数转换成10进制的 并输出最大的十进制数输入n个数,每个数的进制由其后面的数字k指定,k>=2且k
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/14 11:20:32
用C语言将k进制的数转换成10进制的 并输出最大的十进制数输入n个数,每个数的进制由其后面的数字k指定,k>=2且k
用C语言将k进制的数转换成10进制的 并输出最大的十进制数
输入n个数,每个数的进制由其后面的数字k指定,k>=2且k
用C语言将k进制的数转换成10进制的 并输出最大的十进制数输入n个数,每个数的进制由其后面的数字k指定,k>=2且k
上面代码不是基本完成了吗
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int KToD(char str[],int k);
int main()
{
int n,k,i,*a,max;
char ch[64];
scanf("%d",&n);
fflush( stdin );
a = (int*)malloc( sizeof(int)*n );
for(i=0;i<n;i++)
{
memset( ch, 0, 64 );
fscanf( stdin, "%s %d", &ch, &k );
a[i] = KToD(ch,k);
}
max=a[0];
for(i=1;i<n;i++)
max=(max>a[i])? max:a[i];
printf("%d\n",max);
return 0;
}
int KToD(char str[],int k)
{
int d,i;
d=0;
for(i=0;str[i]!=0;i++)
d=d*k+(str[i]-'0');
return d;
}