请教大家一道C语言编程题目,小弟不会,救命啊~

计算购房按揭

购买商品房可采用三种按揭方式:
方式一、公积金贷款:首期支付房款的30%,余款全部申请公积金贷款。贷款期限≤5年,利率为3.6%;贷款期限>5年,利率为4.05%。
方式二、商业性贷款:首期支付不少于房款的20%,余款全部申请商业性贷款。贷款期限≤5年,利率为4.77%;贷款期限>5年,利率为5.04%。
方式三、混合性贷款:首期支付房款的30%,因公积金贷款限额而不能采用“方式一”者,可申请一部分公积金贷款,其余差额部分再申请商业性贷款支付。
无论采用以上哪种贷款方式,购房者还须在首付款中加上以下费用:
保险费:房款总额的2%;
贷款税:贷款总额的0.05%;
贷款公证费:贷款总额的0.3%。

试用C语言编写“购房按揭计算工具”。该计算工具能根据输入的购房款总额及拟采用的按揭方式、贷款期限(1年为12期,贷款利息是按期复利计算的)计算出“首付款”和“每月付款”。

#include "iostream.h"
#include "math.h"
void Compute1(double,int);//方式一,公积金
void Compute2(double,int);//方式二,商业
void Compute3(double,int);//方式三,混合
void main()
{
double Sum;//购房总款(元)
int choose,qx;//choose按揭方式,qx贷款期限(年)
cout<<"选择按揭方式:1公积金 2商业性贷款 3混合性贷款\n";
cin>>choose;
cout<<"输入购房款总额(元)及贷款期限(年)\n";
cin>>Sum>>qx;
switch(choose)
{
case 1:Compute1(Sum,qx);break;
case 2:Compute2(Sum,qx);break;
case 3:Compute3(Sum,qx);break;
default:cout<<"输入错误\n";break;
}
}
void Compute1(double Sum,int qx)
{
if(qx<=0) {cout<<"期限不能为负\n";return;}
double sf,pay,rate;//sf首付,pay每月还款,rate(月利息+1)
pay=0;
sf=Sum*0.3+Sum*0.02+Sum*0.7*(0.0005+0.003);
if(qx<=5) rate=0.036/12+1;
else rate=0.0405/12+1;
pay=Sum*0.7*(rate-1)*pow(rate,qx*12)/(pow(rate,qx*12)-1);
cout<<"首付款:"<<sf<<"每月还款:"<<pay<<endl;
}
void Compute2(double Sum,int qx)
{
if(qx<=0) {cout<<"期限不能为负\n";return;}
double sf,pay,rate;//sf首付,pay每月还款,rate(月利息+1)
pay=0;
sf=Sum*0.2+Sum*0.02+Sum*0.8*(0.0005+0.003);
if(qx<=5) rate=0.0477/12+1;
else rate=0.0504/12+1;
pay=Sum*0.8*(rate-1)*pow(rate,qx*12)/(pow(rate,qx*12)-1);
cout<<"首付款:"<<sf<<"每月还款:"<<pay<<endl;
}
void Compute3(double Sum,int qx)
{
double xe,sf,pay,rate;//xe公积金限额
sf=Sum*0.3+Sum*0.02+Sum*0.7*(0.0005+0.003);
if(qx<=0) {cout<<"期限不能为负\n";return;}
cout<<"输入公积金贷款限额:\n";
cin>>xe;
if(xe>=Sum*0.7){cout<<"请选择方式一\n";return;}
//======================公积金部分=========================================
if(qx<=5) rate=0.036/12+1;
else rate=0.0405/12+1;
pay=xe*(rate-1)*pow(rate,qx*12)/(pow(rate,qx*12)-1);

//======================商业性贷款==============================================
if(qx<=5) rate=0.0477/12+1;
else rate=0.0504/12+1;
pay+=(Sum*0.7-xe)*(rate-1)*pow(rate,qx*12)/(pow(rate,qx*12)-1);

cout<<"首付款:"<<sf<<"每月还款:"<<pay<<endl;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-08-20
你是不是就不会c语言,按照描述把相应的语句写出来。有三中方式,你首先输出“printf”三个选项,然后判断看选择某种方式,进行计算。晕。
第2个回答  2008-08-20
这很简单啊~纯模拟的题~
不会做那你在编程方面就是个白痴了
(我不会C帮不了你)
第3个回答  2008-08-20
你是什么都不会还是不会算法?
第4个回答  2008-08-20
问你老师咋么教的