社区讨论
c语言75分,请问各位大佬问题出在哪谢谢
B2141确定进制参与者 3已保存回复 10
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 9 条
- 当前快照
- 1 份
- 快照标识符
- @mjr220un
- 此快照首次捕获于
- 2025/12/29 19:08 2 个月前
- 此快照最后确认于
- 2026/01/01 19:55 2 个月前
C
#include <stdio.h>
#include <math.h>
int jdg(long long int base,int a1,int a2,int a3);
void nbc(long long int base,int *b,int a);
int main(void)
{
int p,q,r;
long long int base = 2;
scanf("%d %d %d", &p, &q, &r);
while( jdg(base,p,q,r) ){
base++;
if( base>=p && base>=q && base>=r && base>10){
base = 0;
break;
}
}
printf("%d", base);
return 0;
}
//judgment
int jdg(long long int base,int a1,int a2,int a3)
{
int ret = 1;
int b1 = 0,b2 = 0,b3 = 0;
nbc(base,&b1,a1);
nbc(base,&b2,a2);
nbc(base,&b3,a3);
if(b1*b2==b3){
ret = 0;
}
return ret;
}
//Number Base Conversion
void nbc(long long int base,int *b,int a)
{
*b = 0;
int weight = 0;
while( a>0 ){
*b += (a%10)*pow(base,weight++);
a /= 10;
}
}
回复
共 10 条回复,欢迎继续交流。
正在加载回复...