C++实验二
实验二 预处理和语句
【实验目的】
1、熟悉并掌握使用文件包含命令;
2、熟悉并学习使用条件编译命令;
3、掌握选择语句;
4、掌握循环语句;
【实验内容】
1、编写一个程序,输入某雇员的每周工作时间(以小时计)和每小时的工资数,计算并输出他的工资。若雇员周工作小时超过40 小时,则超过部分按原工资的1.5 倍的加班工资来计算。若雇员每周工作小时超过60 小时,则超过60 的部分按原工资的3 倍的加班工资来计算,而40 到50 小时的工资仍按照原工资的1.5 倍的加班工资来计算。
•要求有输入提示和输出提示,如要输入雇员的工作时间和每小时的工资值时,可以提示:
“Please input employee’s work time and wage_per_hour:”
输出时,提示:
“The employee’s wage :”;
2、编写一个程序,提示用户输入一个年份及这一年的第一天是星期几,输出每个月的第一天是星期几。例如,如果用户输入2005和6,表示 2005年1月1日是星期六,程序应输出如下内容:
January 1, 2005 is Saturday
…
December 1, 2005 is Thursday
•用函数 int ComputeDay(int year, int day)计算星期;
•在main函数完成用户输入和输出工作;
3、编写贷款分期偿还程序。一笔贷款的月还款包含偿还本金和偿还利息。月利息可以通过月利率乘以余额(剩余本金)来计算,于是月偿还金额就等于月还款额减去月利息。
•要求用户输入贷款额、贷款年限和利率,程序输出分期还款的计划。
•如果输入贷款额度10000美元、期限1年和利率7%,程序应该输出:
Load Amount:10000
Number of Years:1
Annual Interest Rate:7%
Monthly Payment:865.26
Total Payment:10381.21
Payment# Interest Principal Balance
1 58.33 806.93 9193.07
2 53.62 811.64 8381.43
…
11 10.0 855.26 860.27
12 5.01 860.25 0.01
1 #include<iostream> 2 using namespace std; 3 int main(){ 4 double hour,pwage,wage; 5 cout<<"Please input employee’s work time and wage_per_hour:"; 6 cin>>hour>>pwage; 7 if(hour<=40) wage=hour*pwage; 8 if(hour>40&&hour<=60) wage=40*pwage+(hour-40)*1.5*pwage; 9 else wage=(hour-60)*pwage*3+20*pwage*1.5+40*pwage; 10 cout<<"The employee’s wage :"<<wage<<endl; 11 return 0; 12 }
1 #include<iostream> 2 using namespace std; 3 int i=0; 4 int ComputeDay(int year, int day){ 5 int monthday[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; 6 i++; 7 if(year%4==0&&year%100!=0||year%400==0) 8 monthday[1]=29; 9 day=(day+monthday[i]-28)%7; 10 if(day==0) day=7; 11 return day; 12 } 13 int main() 14 { 15 int i,year,day; 16 char month[12][10]={"January","February","March","April","May","June","July","August","September","October","November","December"}; 17 char dayone[7][10]={"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"}; 18 cout<<"Please input the year and the day:"; 19 cin>>year>>day; 20 cout<<"January"<<" 1,"<<year<<" is "<<dayone[day-1]<<endl; 21 for(i=1;i<=11;i++){ 22 day=ComputeDay(year,day); 23 cout<<month[i]<<" 1,"<<year<<" is "<<dayone[day-1]<<endl; 24 } 25 return 0; 26 }
#include<iostream> #include<math.h> #include<iomanip> using namespace std; int main(){ double la,noy,air; double interest,balance; int month; cout<<"Load Amount:"; cin>>la; cout<<"Number of Years:"; cin>>noy; cout<<"Annual Interest Rate:"; cin>>air; double monthlyPayment=la*air/12*pow(1+air/12,12*noy)/(pow(1+air/12,12*noy)-1); double totalPayment=monthlyPayment*noy*12; cout<<endl; cout<<"Monthly Payment:"<<fixed<<setprecision(2)<<monthlyPayment<<endl; cout<<"totalPayment: "<<fixed<<setprecision(2)<<totalPayment<<endl; cout<<endl; cout<<"Payment# Interest Principal Balance"<<endl; balance=la; for(month=1;month<=noy*12;month++){ interest=balance*air/12; balance-=(monthlyPayment-interest); cout<<month<<" "<<interest<<" "<<monthlyPayment-interest<<" "<<balance<<endl; } return 0; }