C++ 实验一

编程题1

题目描述
编程序,任意输入5个数据,求出它们的累加和sum,并将结果显示在屏幕上。

输入
第一个和第三个为整型数据,第二个和第四个为实型数据,第五个为一个字符型数据

输出
求和结果

样例输入
10 2.3 5 3.3 A
样例输出
85.6
#include <iostream>
using namespace std;
int main(){
	int a,b;
	double c,d,sum;
	char f;
	cin>>a>>c>>b>>d>>f;
	sum = a+b+c+d+f;
	cout<<sum;
	return 0;
}

编程题2

题目描述
编程序,从键盘输入整数x、y,计算出x2+x–y以及w=2πx+πy2,并将结果显示在屏幕上。

输入
从键盘读入两个整数

输出
两个式子结果,用空格隔开。结果是小数,应当保留三位

样例输入
3 4
样例输出
8 69.115
#include <iostream>
#include <iomanip> 
using namespace std;
#define pi 3.1415926
void func(int x,int y){
	double a = x*x+x-y;
	double b = 2*pi*x+pi*y*y;
	cout<<a<<" ";
	cout<<setiosflags(ios::fixed)<<setprecision(3)<<b;
}
int main(){
	int x,y;
	cin>>x>>y;
	func(x,y);
	return 0;
}

编程题3

题目描述
编写一个程序,当用户按照“时、分、秒”格式输入两个时刻后,求出这两个时刻的时间差(按秒计算)并打印到屏幕上。

输入
参考样例按照数序输入两个时刻。

输出
输出两个时刻所差的秒数。

样例输入
12 20 30 13 30 30
样例输出
4200
#include <iostream>
#include <cmath>
using namespace std;
int main(){
	int a,b,c;
	int d,e,f;
	int sum;
	cin>>a>>b>>c>>d>>e>>f;
	sum = fabs(3600*(d-a)+60*(e-b)+(f-c));
	cout<<sum;
	return 0;
}

编程题4

题目描述
键盘输入:年份、月份、日期,输出该日期是该年份的第几天。
要求:(1)年份要大于0,月份在1~12之间,日期要在该月份的合理范围内;
(2)要考虑闰年。

输入
输入年份(4位)、月份、日,各数据之间有1个空格

输出
输出该日期从当年1号开始的天数

样例输入
2020 3 20
样例输出
80
#include <iostream>
using namespace std;
int main(){
	int a,b,c;
	bool p;
	cin>>a>>b>>c;
	int m = 0;
	if((a%4 == 0&&a%100!=0)||(a%100==0&&a%400 == 0))
	p = true;
	int n[12] = {31,29,31,30,31,30,31,31,30,31,30,31};
	if(p)
	n[1] = 29;
	else
	n[1] = 28;
	for(int i = 0;i<b-1;i++){
		m += n[i];	
	}
	cout<<m+c;
	return 0;
}

编程题5

题目描述
商家促销某商品,1件单价100元,25件单价90元,610件单价85元,11件及以上单价80元。客户购买n件,需要支付多少钱?

输入
输入正整数n,表示商品件数

输出
支付的总金额

样例输入
3 
样例输出
270
#include <iostream>
using namespace std;
int main(){
	int n;
	cin>>n;
	if(n == 1){
		cout<<100;
	}
	else if(n>1&&n<6){
		cout<<n*90;
	}
	else if(n>5&&n<11){
		cout<<n*85;
	}
	else
	cout<<n*80;
	return 0;
} 

编程题6

题目描述
从键盘上输入三个数,判断能否构成三角形,如果能则输出三角形面积,否则输出“No triangle”。提示:用海伦公式求三角形面积;求X的平方根用函数sqrt(x)

输入
输入3个数

输出
输出三角形的面积数值,或者输出:No triangle

样例输入
3 4 5
样例输出
6
#include <iostream>
#include <cmath>
using namespace std;
int main(){
	int a,b,c;
	cin>>a>>b>>c;
	double p = (a+b+c)/2;
	if(a+b>c&&b+c>a&&c+a>b){
		cout<<sqrt(p*(p-a)*(p-b)*(p-c));
	}
	else
	cout<<"No triangle";
	return 0;
} 

编程题7

题目描述
输出第n个Fibonacci数。 说明:
Fibonacci数依次为:1,1,2,3,5,8,……,其规律为:
F1=1 (n=1)
F2=1 (n=2)
Fn=Fn-1+Fn-2 (n>=3)

输入
输入整数n(在1~40之间)

输出
输出第n个Fibonacci数

样例输入
8
样例输出
21
#include <iostream>
using namespace std;
int function(int n){
	if(n == 1||n == 2)
	return 1;
	else
	return function(n-1)+function(n-2);
}
int main(){
	int n;
	cin>>n;
	cout<<function(n);
	return 0;
}

编程题8

题目描述
从键盘输入多个实数(0为结束标志),计算其中所有正数的平均值。

输入
键盘输入一组数据,最后一个0为输入结束标志

输出
输出该组数据中的所有正数的平均值

样例输入
18 -20 30 12 0
样例输出
20
#include <iostream>
using namespace std;
int main(){
	double a[1000];
	int i = 0;
	int n = 0;
	double sum =  0;
	cin>>a[i]; 
	while(a[i]!=0){
		i++;
		cin>>a[i];
	}
	for(int j = 0;j<i;j++){
		if(a[j]>0){
			sum +=a[j];
			n++;
		}
	}
	cout<<sum/n;
	return 0;
} 
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值