#define _CRT_SECURE_NO_WARNINGS
#include<cstdio>
#include<cstring>
using namespace std;
#define maxnum 10
int main(void)
{
char c1[maxnum]= { 0 };
char c2[maxnum] = { 0 };
scanf("%s%s", c1,c2);
int n1, n2;
n1 = strlen(c1);
n2 = strlen(c2);
int sum = 0;
for (int j = 0; j < n1; j++) {
for (int i = 0; i < n2; i++) {
sum +=(c2[i]-'0') * (c1[j]-'0');
}
}
printf("%d\n",sum);
return 0;
}
> #include<cstring>这个要注意,我当时用了#include<string>编译器报错了,用C++时头文件也要用C++的格式
> sum +=(c2[i]-'0') * (c1[j]-'0');意思时c2[i]和c1[j]都属于ASC码表里的,所以要减去ASC表里面的'0'
特殊乘法写个算法,对2个小于1000000000的输入,求结果。 特殊乘法举例:123 * 45 = 1*4 +1*5 +2*4 +2*5 +3*4+3*5
于 2023-02-16 14:00:46 首次发布