题解 | #特殊乘法#
特殊乘法
https://www.nowcoder.com/practice/a5edebf0622045468436c74c3a34240f
#include <stdio.h>
int main() {
int a,b,sum=0;
scanf("%d %d",&a,&b);
for(int i=a;i>0;i=i/10){
for(int j=b;j>0;j=j/10){
sum+=(i%10)*(j%10);
}
}
printf("%d",sum);
return 0;
}
学习到的思路:
1、scanf("%d %d",&a,&b);多个输入的形式
2、获取整数每一位数的方法:先取余,再取整,直到取整为0
#include <stdio.h>
#include <string.h>
#define MAXNUM 10
int main(){
char c1[MAXNUM]={0},c2[MAXNUM]={0};
scanf("%s%s",c1,c2);
int a,b,sum=0;
a=strlen(c1);
b=strlen(c2);
for(int i=0;i<a;i++){
for(int j=0;j<b;j++){
sum+=(c1[i]-'0')*(c2[j]-'0');
}
}
printf("%d",sum);
return 0;
}
可学习的经验:
1、多个字符串的输入scanf("%s%s",c1,c2); 字符串的初始化
2、字符和整数数字之间的计算 sum+=(c1[i]-'0')*(c2[j]-'0');

查看13道真题和解析