3.特殊乘法
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main(){
char s1[15],s2[15];
while(scanf("%s%s",s1,s2)!=EOF)
{
int a=0;
int b=0;
int sum=0;
for(int i=0;i<strlen(s1);i++)
{
a=s1[i]-48;
for(int j=0;j<strlen(s2);j++)
{
b=s2[j]-48;
sum=(a*b)+sum;
}
}
cout<<sum<<endl;
}
return 0;
}
代码片
4.比较奇偶数个数
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main(){
int n=0;//表示输入多少个数
while(scanf("%d",&n)!=EOF)
{
int count=0;
for(int i=1;i<=n;i++){
int b;//表示输入进来的数
scanf("%d",&b);
if(b%2==0)
count++;
}
if((n-count)<count)
cout<<"NO"<<endl;
else
cout<<"YES"<<endl;
}
return 0;
}
F A+B和C (15)
这个题有点坑爹的地方就是原来它是要一次性把所有样例都输进去,再输出,所以开始一直错了。
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main(){
int n=0;//表示输入几组数据
scanf("%d",&n);
if(n<=0||n>10){
printf("T error!\n");
return 0;
}
long long A[10],B[10],C[10]; //注意对A B C的要求
int i;
for(i=0;i<n;i++){
scanf("%lld%lld%lld",&A[i],&B[i],&C[i]);
}
for(i=0;i<n;i++){
if(A[i]+B[i]>C[i]){
printf("Case #%d: true\n",i+1);
}
else{
printf("Case #%d: false\n",i+1);
}
}
return 0;
}
问题 H: 部分A+B (15)
这题自己犯傻,居然scanf格式符搞错了,调半天,才发现格式符错了。
字符串char 是%s, 单个字符char 是%c
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main(){
char a[12],b[12];//用字符串存储数字
int a1,b1;//a1,b1代表想要输入的da,db
while(scanf("%s %d %s %d",a,&a1,b,&b1)!=EOF){
int t1=0;
int t2=0;
for(int i=0;i<strlen(a);i++){
int a2=a[i]-'0';
if(a2==a1)
t1=t1*10+a1;
}
for(int i=0;i<strlen(b);i++){
int b2=b[i]-'0';
if(b2==b1)
t2=t2*10+b1;
}
cout<<(t1+t2)<<endl;
}
return 0;
}