首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

诚意请问前辈们其中一道C作业

2012-03-25 
诚意请教前辈们其中一道C作业小弟初学C,有1道编程题不会做,请前辈们帮忙也一下,就要交作业了,挺着急的,万

诚意请教前辈们其中一道C作业
小弟初学C,有1道编程题不会做,请前辈们帮忙也一下,就要交作业了,挺着急的,万分感谢大家阿!!!

开放式基金是一种委托投资理财产品。用户可以向基金管理机构购买/赎回基金,基金管理机构负责将基金投资于股票等金融产品获取收益,并收取一定的管理费用。假设某基金在成立时每份面值为1元,申购费率为1.5%,赎回费率为0.5%。则有如下规则:
1.每个用户购买时的金额必须大于等于1000,并且是1000的整数倍;
2.基金份额   =   购买金额×(1-申购费率)/份额面值;
3.基金运作后每天公布当日每份基金净值,如0.9871或者1.0121,则:
用户当前净值=基金份额×当日每份基金净值;
4.每日净值增长率=(当日每份基金净值-昨日每份基金净值)/昨日每份基金净值×100%;
5.浮动盈亏=用户当前净值×(1-赎回费率)-购买金额;
6.周平均净值   =   一周每日净值的和/工作日;
编写一个程序,要求用户输入在基金成立时的购买金额和基金运作第一周的每日份额净值,统计一周来用户的收益情况。例如,一次程序运行的情况如下:
Please   input   your   money(> 1000,   and   multiple):   1500
1500   is   not   multiple   of   1000.
Please   input   your   money(> =1000,   and   multiple):   10000
Please   input   everyday   net   value   in   this   week:
0.9872     0.9935     1.0102     0.9905     1.0235
Quotient         Net   Value           Increase   Rate         Current   Value         Current   Payoff
9850               0.9872                     -1.28%                       9724                         -325
9850               0.9935                       0.64%                       9786                         -263
9850               1.0102                       1.68%                       9950                         -99
9850               0.9905   -1.95%                       9756                         -292
9850               1.0235                       3.33%                     10081                             31
Average   Net   Value   in   this   week   =   1.00098



[解决办法]
#include <stdio.h>
#include <stdlib.h>

int js(int money,float value[])
{
int Quotient,Cvalue[6],Cpayoff[6],t,i;
float IRate[6],avgvalue;
Quotient=money*(1-0.015)/1.0;
for(i=1;i <6;i++)
{
IRate[i]=((value[i]-value[i-1])/value[i-1])*100;
Cvalue[i]=Quotient*value[i];
Cpayoff[i]=(Quotient*value[i])*(1-0.005)-money;
}
avgvalue=(value[1]+value[2]+value[3]+value[4]+value[5])/5.0;
printf( "Quotient\tNet Value\tIncrease Rate\tCurrent Value\tCurrent Payoff\n ");
for(i=1;i <6;i++)
printf( "%d\t\t%f\t%f%%\t%d\t\t%d\n ",Quotient,value[i],IRate[i],Cvalue[i],Cpayoff[i]);
printf( "Average Net Value in this week :%f ",avgvalue);

}

int main(int argc, char *argv[])


{
int money,i;
float value[6];
printf( "Please input your money(> 1000, and multiple): ");
scanf( "%d ",&money);
if(money%1000!=0)
printf( "1500 is not multiple of 1000\n ");
else
{
printf( "Please input everyday net value in this week: ");
value[0]=1;//设置第一天的前一天的每份基金净值
scanf( "%f,%f,%f,%f,%f ",&value[1],&value[2],&value[3],&value[4],&value[5]);
}
js(money,value);

system( "PAUSE ");
return 0;
}


这时候给你发不知道晚了没.
这道题和前面的高手们说的一样很简单,你就把数据搞清楚就行了.
不弟不才把我做的发给你,有一点点误差就是四舍五入的问题没有弄.

热点排行