根据输入球体半径计算球体体积并输出java 编写程序,输入球体半径
转载
一、第一种类型题,普遍是简单运算
- 计算球的体积V=4/3πr^3,输入球的半径r,求出体积保留3位小数
#include<bits/stdc++.h>
using namespace std;
int main()
{
double pi = 3.14,r,v;
cin>>r;
v = 4/3.0*pi*r*r*r;
printf("%.3f",v);
return 0;
}
|
- 计算圆的面积s = pi*r^2,输入半径r,求出面积保留2位小数
#include<bits/stdc++.h>
using namespace std;
int main()
{
double pi = 3.14,r,s;
cin>>r;
s = pi*r*r;
printf("%.2f",s);
return 0;
}
|
- 计算长方体体积v = 长*宽*高,长宽高分别用a,b,c代替并输入,保留两位小数
如输入1.2 4.5 3.7,输出19.98
#include<bits/stdc++.h>
using namespace std;
int main()
{
double a,b,c,v;
cin>>a>>b>>c;
v = a*b*c;
printf("%.2f",v);
return 0;
}
|
二、if-else的判断题
- 输入三个整数,输出较大值
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
if(a>b&&a>c)cout<<a;
else if(b>a&&b>c)cout<<b;
else cout<<c;
return 0;
}
|
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
cout<<max(a,max(b,c));
return 0;
}
|
- 用C++编写程序判断一个正整数54是否是两位数(即大于等于10小于等于99)。若该正整数是两位数,则输出1,否则输出0。
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n=54;
if(n>=10&&n<=99)cout<<1;
else cout<<0;
return 0;
}
|
- 【问题描述】
贝贝约晶晶下周一起去看展览,但晶晶每周的周二和周五有课必须上课,请帮晶晶判断她能否接受贝贝的邀请。
【输入】
一个整数,贝贝邀请晶晶去看展览的日期,数字1~7分别表示周一至周日。
【输出】
一行,如果晶晶可以接受贝贝的邀请,输出YES,否则,输出NO。
【样例输入】
3
【样例输出】
YES
【参考答案】
#include <iostream>
using namespace std;
int main(){
int day;
cin >> day;
if(day==2||day==5){
cout << "NO";
}else{
cout << "YES";
}
return 0;
}
|
三、循环类型题目,需要使用循环来计算
1.水仙花数是一个特殊的三位数,它们的每一位数的立方和恰好等于它们本身,如153 = 1^3+5^3+3^3,请你用编程写出100-999以内的水仙花数并输出
#include<bits/stdc++.h>
using namespace std;
int main()
{
for(int i=100;i<=999;i++)
{
int a = i/100; //获取i的百位数
int b = i/10%10; //获取i的十位数
int c = i%10; //获取i的个位数
if(i==a*a*a+b*b*b+c*c*c) //满足条件则输出
cout<<i<<endl;
}
return 0;
}
|
- 【问题描述】
蜗牛在n米深的井底往上爬,每天从白天向上爬x米,夜晚下滑y米,蜗牛需要爬多少天才能爬上井口呢?
【输入】
一行,三个正整数,分别表示井深度n米,蜗牛白天爬x米,夜晚下滑y米。
【输出】
一行,表示爬出井需要的天数。
【输入样例】
10 5 3
【输出样例】
4
【参考答案】
#include<iostream>
using namespace std;
int main() {
int n,x,y;
cin >> n >> x >> y;
int sum=0,day=1;
while(true) {
sum+=x;
if(sum>=n) {
break;
}
sum-=y;
day++;
}
cout << day ;
return 0;
}
|
- 【问题描述】
输入一行字符(长度不超过100字符),统计其中数字字符的个数。
【输入】
一行字符串,总长度不超过100字符。
【输出】
一行,一个整数,表示字符串中数字字符的个数。
【输入样例】
It'sthe5thofMarch.
【输出样例】
1
【参考答案】
#include <iostream>
#include <cstring>
using namespace std;
int main(){
char s[101];
int num=0;
cin >> s;
int len=strlen(s);
for(int i=0;i<len;i++){
if(s[i]>='0'&&s[i]<='9'){
num++;
}
}
cout << num;
return 0;
}
|
- 【问题描述】
输入一行字符(长度不超过100字符),统计其中大写字母和小写字母的个数。
【输入】
一行字符串,总长度不超过100字符。
【输出】
一行,一个整数,表示字符串中大写字母和小写字母的个数。
【输入样例】
It'sthe5thofMarch.
【输出样例】
2 13
#include<bits/stdc++.h>
using namespace std;
int main()
{
char a[101];
cin>>a;
int x=0,y=0,len = strlen(a);
for(int i=0;i<len;i++)
{
if(isupper(a[i]))x++;
if(islower(a[i]))y++;
}
cout<<x<<" "<<y;
return 0;
}
|
- 你手上拿着100元钱去买100只鸡,鸡的种类有3种:小鸡,母鸡,公鸡,这3种鸡的价格也有所区别,小鸡是1元3只,母鸡是3元1只,公鸡是5元1只
【输出】所有可能的购买方案。
【样例输出】
0 25 75
4 18 78
8 11 81
12 4 84
【参考代码】
#include<iostream>
using namespace std;
int main(){
int x,y,z;
for(x=0;x<=20;x++)
for(y=0;y<=33;y++){
z=100-x-y;
if(5*x+3*y+z/3==100&&z%3==0){
cout<<x<<" "<<y<<" "<<z<<endl;
}
}
return 0;
}
|
5.输入一个数,判断是否是质数,是输出1,不是输出0
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,sum = 0;
cin>>n;
for(int i=1;i<=n;i++)
{
if(n%i==0)sum++;
}
if(sum>2)cout<<"no";
else cout<<"yes";
return 0;
}
//输入一个数,判断是否是质数,
//质数指的是只有2两个因数的数,如2,3,5,7,11等等
//质数 2 3 5
//非质数 4 6 8
四、数组类型题目,需要用到数组的运算,比如数列问题
- 有这样一个数列,1、1、2、3、5、8、13... ,同学们请观察这个数列规律,你会发现数列中每个位置(位置>=3)上数字的值等于它前面两个数字之和,现在输入任意整数,求以这个整数为位置,数列中的值。(输入的位置最大上限不超过50)
【样例输入】
6
【样例输出】
8
【参考代码】
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a[51] = {0,1,1}; //初始化前两位
int n;
cin>>n;
for(int i=3;i<=n;i++) //计算从第3位到第n位的值
a[i] = a[i-1]+a[i-2]; //第i位 = 前两位相加
cout<<a[n]; //输出数列的第n项
return 0;
}
|
- 给定一组数列 1,2,9,33,126,477,...,观察数列规律,请计算第6项的数据及前6项的和
解析:分析数列规律可以得出除了第1,2项是固定为1,2,从第3项开始都等于前两项的和乘以3
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a[51] = {0,1,2}; //初始化前两位
int sum = 1+2; //求和
for(int i=3;i<=6;i++) //计算从第3位到第6位的值
{
a[i] = (a[i-1]+a[i-2])*3;
}
cout<<a[6]; //输出数列的第6项
return 0;
}
|
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。