信息学奥赛一本通(基础篇)题解(未做完)

 (未做完)急着要代码发评论。

基础一

C++语言入门

1000:
#include<iostream>
using namespace std;
int main()
{
 int a,b;
 cin>>a>>b;
 cout<<a+b;
 return 0;
}

 注:代码已全经过本人试验,有问题发评论

 2060:
#include<iostream>
using namespace std;
int main()
{
 cout<<"Hello World!"<<endl;
 return 0;
}
 2061:
#include<bits/stdc++.h>
using namespace std;
int main()
{
float s,a,b,c;
a=15;
b=25;
c=2*150/15;
s=(a+b)*c/2;
printf("%0.2f\n",s);
	return 0; 
}
2062:
#include<iostream>
using namespace std;
int main()
{
int a;
cin>>a;
cout<<a<<" "<<a*10;
return 0;
}
2063:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a,b,c;
a=15*20;
b=20*10;
c=(a-b)/(20-10);
cout<<c;
	return 0; 
}
1001:
#include<iostream>
using namespace std;
int main()
{
 cout<<"Hello,World!"<<endl;
 return 0;
}
 1002:
#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
cout<<b;
return 0;
}
1003: 
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
printf("%8d %8d %8d",a,b,c);
}
1004: 
#include<iostream>
using namespace std;
int main()
{
char a;
cin>>a;
cout<<"  "<<a<<"  "<<endl;
cout<<" "<<a<<a<<a<<" "<<endl;
cout<<a<<a<<a<<a<<a<<endl;
return 0;
}
1005:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int x,a,y,b;
cin>>x>>a>>y>>b;
float c=1.0*(b*y-a*x)/(b-a);
printf("%.2f",c);
	return 0; 
}

顺序结构程序设计

运算符和表达式

2064:
#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b;
c=a;
a=b;
b=c;
cout<<a<<" "<<b;
return 0;
}
2065:
#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
cout<<a+b+c;
return 0;
}
2066:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,m;
double x;
cin>>n>>m;
x=1.0*n-m*0.8;
printf("%.2lf",x);
	return 0; 
}
1006:
#include<iostream>
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
cout<<a+b;
return 0;
}
1007:
#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
cout<<(a+b)*c;
return 0;
}
1008:
#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
cout<<(a+b)/c;
return 0;
}
1009:
#include<iostream>
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
cout<<a/b<<" "<<a%b;
return 0;
}
1010:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double a,b;
cin>>a>>b;
printf("%.9lf",a/b);
	return 0; 
}

常量和变量

2067:
#include<bits/stdc++.h>
using namespace std;
int main()
{
const double PI=3.1415926;
double r,d,c,s;
cin>>r;
d=r*2;
c=d*PI;
s=r*r*PI;
printf("%0.4f %0.4f %0.4f",d,c,s);
	return 0; 
}
2068:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int x,y;
cin>>x>>y;
int a=(x*4-y)/2;
cout<<a<<" "<<x-a;
	return 0; 
}
1011:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double a,b,c;
cin>>a>>b;
c=(b/a)*100;
printf("%.3lf",c);
cout<<"%";
	return 0; 
}
1012:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double x,a,b,c,d;
cin>>x>>a>>b>>c>>d;
x=a*x*x*x+b*x*x+c*x+d;
printf("%.7lf",x);
	return 0; 
}
1013:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double f,c;
cin>>f;
c=5*(f-32)/9;
printf("%.5lf",c);
	return 0; 
}
1014:
#include<bits/stdc++.h>
using namespace std;
int main()
{
const double PI=3.14159;
double a,b,c,d;
cin>>a;
b=2*a;
c=2*PI*a;
d=PI*a*a;
printf("%.4lf %.4lf %.4lf\n",b,c,d);
	return 0; 
}
1015:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double r1,r2,r;
cin>>r1>>r2;
r=1/(1/r1+1/r2);
printf("%.2lf",r);
	return 0; 
}

标准数据类型

1414:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a1,b1,c1,a2,b2,c2,n;
cin>>a1>>b1>>c1;
a2=a1*0.2;
b2=b1*0.3;
c2=c1*0.5;
n=a2+b2+c2;
cout<<n;
	return 0; 
}
1016:
#include<bits/stdc++.h> 
using namespace std;
int main()
{ 
  int a;
short b;
cout<<sizeof(a)<<" "<<sizeof(b);
    }
1017:
#include<bits/stdc++.h> 
using namespace std;
int main()
{ 
  float a;
double b;
cout<<sizeof(a)<<" "<<sizeof(b);
    }
1018:
#include<bits/stdc++.h> 
using namespace std;
int main()
{ 
  char a;
bool b;
cout<<sizeof(a)<<" "<<sizeof(b);
    }
1019:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double a;
cin>>a;
cout<<(int)a;

	return 0; 
}
1020:
#include<bits/stdc++.h> 
using namespace std;
int main()
{ 
  char a;
cin>>a;
cout<<(int)a;
    }
1021:
#include<bits/stdc++.h> 
using namespace std;
int main()
{ 
  int a;
cin>>a;
cout<<(char)a;
    }
1022:
#include<bits/stdc++.h> 
using namespace std;
int main()
{ 
   int a;
cin>>a;
a=(bool)a;
cout<<(int)a;
return 0;
    }
1023:
#include<bits/stdc++.h> 
using namespace std;
int main()
{ 
 cout<<sizeof("Hello, World!");
return 0;
    }

数据输入输出

2069:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a,b,c,d,e;
cin>>a>>b>>c>>d>>e;
a/=3;b+=a;e+=a;
b/=3;a+=b;c+=b;
c/=3;b+=c;d+=c;
d/=3;c+=d;e+=d;
e/=3;d+=e;a+=e;
printf("%5d%5d%5d%5d%5d",a,b,c,d,e);
	return 0; 
}
1024:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double a;
cin>>a;
printf("%.3lf",a);
	return 0; 
}
1025:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double a;
cin>>a;
printf("%.12lf",a);
	return 0; 
}
1026:
#include<bits/stdc++.h>
using namespace std;
int main()
{
char a;
int b;
float c;
double d;
cin>>a>>b>>c>>d;
printf("%c %d %.6f %.6lf",a,b,c,d);
	return 0; 
}
1027:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double a;
cin>>a;
printf("%f\n%.5f\n%e\n%g",a,a,a,a);
	return 0; 
}
1028:
#include<bits/stdc++.h>
using namespace std;
int main()
{
char a;
cin>>a;
cout<<"  "<<a<<"  "<<endl<<" "<<a<<a<<a<<" "<<endl<<a<<a<<a<<a<<a<<endl<<" "<<a<<a<<a<<" "<<endl<<"  "<<a<<"  ";
return 0;
}

顺序结构实例

2070:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,a,b,c;
cin>>n;
a=n/100;
b=(n/10)%10;
c=n%10;
n=c*100+b*10+a*1;
cout<<n;
	return 0; 
}
2071:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double q,r;
cin>>q>>r;
printf("%.4lf",(q*87+r*85)/(q+r));
	return 0; 
}
2072:
#include<bits/stdc++.h>
using namespace std;
int main()
{
printf("%5.2f",9.6);
	return 0; 
}
2073:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double s,p,a,b,c;
cin>>a>>b>>c;
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
cout<<fixed<<setprecision(3)<<s;
	return 0; 
}
1029:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double a,b,r;
int k;
cin>>a>>b;
k=(int)a/b;
r=a-k*b;
cout<<r;
return 0; 
}
1030:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double v,r,PI=3.14;
cin>>r;
v=4.0/3*PI*r*r*r;
cout<<fixed<<setprecision(2)<<v;
	return 0; 
}
1031:
#include<bits/stdc++.h>
using namespace std;
int main()
{ 
int n;
cin>>n;
printf("%d%d%d",n%10,n/10%10,n/100);
	return 0; 
}
1032:
#include<bits/stdc++.h>
using namespace std;
int main()
{ 
double PI=3.14,v;
int h,r;
cin>>h>>r;
v=PI*r*r*h/1000;
printf("%d",(int)ceil(20/v));
	return 0; 
}
1033:
#include<bits/stdc++.h>
using namespace std;
int main()
{ 
double a,b,a1,b1,d;
cin>>a>>b>>a1>>b1;
d=sqrt((a-a1)*(a-a1)+(b-b1)*(b-b1));
printf("%.3lf",d);
	return 0; 
}
1034:
#include<bits/stdc++.h>
using namespace std;
int main()
{ 
double xa,ya,xb,yb,xc,yc,a,b,c,p,s;
cin>>xa>>ya>>xb>>yb>>xc>>yc;
a=sqrt((xa-xb)*(xa-xb)+(ya-yb)*(ya-yb));
b=sqrt((xb-xc)*(xb-xc)+(yb-yc)*(yb-yc));
c=sqrt((xa-xc)*(xa-xc)+(ya-yc)*(ya-yc));
p=(a+b+c)/2; 
s=sqrt(p*(p-a)*(p-b)*(p-c));
printf("%.2lf",s);
	return 0; 
}
1035:
#include<bits/stdc++.h>
using namespace std;
int main()
{ 
int a,b,n,d;
cin>>a>>b>>n;
d=b-a;
cout<<a+(n-1)*d;
	return 0; 
}
1036:
#include<bits/stdc++.h> 
using namespace std;
int main()
{ 
 int A,B;
 cin>>A>>B;
long long c=(long long)A*B;
cout<<c;
return 0;
}
1037:
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long a,b;
cin>>b;
a=pow(2,b);
cout<<a; 
return 0; 
}
1038:
#include<bits/stdc++.h>
using namespace std;
int main()
{ 
int x,y,n,j;
cin>>n>>x>>y;
j=y%x;
if(j!=0)
j=y/x+1;
else j=y/x;
if(j>n)
cout<<"0"; 
else cout<<n-j;
	return 0; 
}

  • 36
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值