#include <cstdio>usingnamespacestd;
int main() {
int a, b; // 保存两个整数的变量while (scanf("%d%d", &a, &b) != EOF) {
int buf1[20], buf2[20], size1 = 0, size2 = 0;
while (a != 0) {
buf1[size1++] = a % 10;
a /= 10;
}
while (b != 0) {
buf2[size2++] = b % 10;
b /= 10;
}
int ans = 0;
for (int i = 0; i < size1; i++) {
for (int j = 0; j < size2; j++)
ans += buf1[i] * buf2[j];
}
printf("%d\n", ans);
}
return0;
}
#include <cstdio>usingnamespacestd;
int main() {
char a[11], b[11];
while (scanf("%s%s", a, b) != EOF) {
int ans = 0;
for (int i = 0; a[i] != 0; i++) {
for (int j = 0; b[j] != 0; j++)
ans += (a[i] - '0') * (b[j] - '0');
}
printf("%d\n", ans);
}
return0;
}
#include <cstdio>int main() {
longlong a, b;
int m;
while (scanf("%d", &m) != EOF) {
if (m == 0)
break;
scanf("%lld%lld", &a, &b);
a = a + b;
int ans[50], size = 0;
ans[size++] = a % m;
a = a/m;
while (a != 0) {
ans[size++] = a % m;
a = a/m;
}
for (int i = size-1; i >= 0; i--) {
printf("%d", ans[i]);
}
printf("\n");
}
return0;
}
数制转换
#include <cstdio>#include <cstring>int main() {
int a, b;
charstr[40];
while (scanf("%d%s%d", &a, str, &b) != EOF) {
// tmp为我们将要计算的a进制对应的十进制数,length为字符串长度方便我们从低到高位遍历每个数位上的数// c为各个数位的权重,初始化为1,表示最低位数位权为1,之后每位权重都是前一位权重的a倍int tmp = 0, length = strlen(str), c = 1;
for (int i = length-1; i >= 0; i--) {
int x;
if (str[i] >= '0' && str[i] <= '9')
x = str[i] - '0'; // 当字符在0到9之间,计算其代表的数字elseif (str[i] >= 'a' && str[i] <= 'z')
x = str[i] - 'a' + 10;
else
x = str[i] - 'A' + 10;
tmp += x * c;
c *= a;
}
char ans[40], size = 0;
int x = tmp % b;
ans[size++] = (x < 10) ? x+'0' : x-10+'A';
tmp /= b;
while (tmp != 0) {
x = tmp % b;
ans[size++] = (x < 10) ? x+'0' : x-10+'A';
tmp /= b;
}
for (int i = size-1; i >= 0; i--)
printf("%c", ans[i]);
printf("\n");
}
return0;
}
#include <cstdio>int gcd(int a, int b){
if (b == 0)
return a;
elsereturn gcd(b, a%b);
}
int main() {
int a, b;
while (scanf("%d%d", &a, &b) != EOF) {
printf("%d\n", gcd(a, b));
}
return0;
}
#include <cstdio>int gcd(int a, int b) {
int tmp;
while (b != 0) {
tmp = a % b;
a = b;
b = tmp;
}
return a;
}
int main() {
int a, b;
while (scanf("%d%d", &a, &b) != EOF) {
printf("%d\n", a*b/gcd(a, b));
}
return0;
}
#include <cstdio>#include <cmath>bool judge(int x) {
if (x <= 1)
returnfalse;
int bound = (int)sqrt(x)+1;
for (int i = 2; i < bound; i++) {
if (x % i == 0)
returnfalse;
}
returntrue;
}
int main() {
int x;
while (scanf("%d", &x) != EOF) {
if (judge(x))
printf("yes\n");
elseprintf("no\n");
}
return0;
}
#include <cstdio>int main() {
int a, b;
while (scanf("%d%d", &a, &b) != EOF) {
if (a == 0 && b == 0)
break;
int ans = 1;
while (b != 0) {
if (b % 2 == 1) {
ans *= a;
ans %=1000;
}
b /= 2;
a *= a;
a %=1000;
}
printf("%d\n", ans);
}
return0;
}