| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 889 人关注过本帖
标题:帮忙看看,谢谢!!
只看楼主 加入收藏
qztr28
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2010-12-2
结帖率:40%
收藏
已结贴  问题点数:20 回复次数:14 
帮忙看看,谢谢!!
以下程序打印出的结果是一个-85899346010的数...为什么会这样呢...程序有哪里有错误吗....特别是 printf("%d",mony1=caculateChareg(n+1));
这句,是不是有什么问题????请指教,谢谢!!!

#include<stdio.h>

int caculateChareg(int);

int caculateChareg(int n,int time,int time1)
{
    int mony1;
    if(time1<=time-3){
        time1++;
    printf("%d",mony1=caculateChareg(n+1));
    }
    else
      printf("%d",mony1);
}
main()
{
  int ca,mony,t1=0,m=2;
    scanf("%d",&ca);
    if (ca<=3){
     mony=2;
printf("%d",mony);
    }
else
    caculateChareg(m,ca,t1);
}
搜索更多相关主题的帖子: include 
2010-12-02 10:50
suoluo2010
Rank: 1
等 级:新手上路
帖 子:6
专家分:2
注 册:2010-12-1
收藏
得分:0 
当然有问题拉,int caculateChareg(int)参数不对嘛,
既然子函数写在main函数之前,int caculateChareg(int);这个申明也可以不要的
2010-12-02 10:59
qztr28
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2010-12-2
收藏
得分:0 
回复 2楼 suoluo2010
那该怎么改呢?
2010-12-02 11:13
qztr28
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2010-12-2
收藏
得分:0 
没人帮吗??
2010-12-02 11:51
xzy199999
Rank: 4
等 级:业余侠客
帖 子:326
专家分:286
注 册:2010-11-19
收藏
得分:0 
都不知道你这个 程序要干什么,想输出什么结果,怎么帮》?

我是初学者
2010-12-02 11:53
五当家
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:2
帖 子:1112
专家分:3674
注 册:2010-10-20
收藏
得分:0 
printf("%d",mony1=caculateChareg(n+1));
你这里是想用递归吧,但是你只有一个参数传递,而你有三个参数来接,这怎么能行呢?

经验积累中............
2010-12-02 12:36
dingxiaowu
Rank: 1
来 自:华南理工大学
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-12-1
收藏
得分:0 
程序问题比较大 首先你的caculateChareg中mony1没有赋予初值,而且printf("%d",mony1=caculateChareg(n+1));这个迭代也有问题的 你的caculateChareg有三个形参 你只赋予了一个   也许你想使你的time1的值继承下来   那你可以将time1设为静态变量   
2010-12-02 12:42
humin_qin
Rank: 2
等 级:论坛游民
帖 子:22
专家分:37
注 册:2010-11-20
收藏
得分:0 
int mony1;这句要付个初值不然程序就会出错也就是显示-的你那个值了
2010-12-02 12:49
aiyinsitan
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:183
专家分:177
注 册:2010-4-22
收藏
得分:0 
具体你要实现一个什么功能,说一下啊  不然怎么改啊
2010-12-02 15:26
aiyinsitan
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:183
专家分:177
注 册:2010-4-22
收藏
得分:20 
你是不是想写一个关于存钱的问题啊,就是如果是小于三个月就是本金,然后大于三个月 。。。我也不知道你是什么想法
#include<stdio.h>

int caculateChareg(int,int,int);

int caculateChareg(int n,int time,int time1)
{
    int mony1=n;
    if(time1<=time-3)
    {
        time1++;
    caculateChareg(n+1,time,time1);                                          
    }
    else
    printf("%d",mony1*time1);
    return 0;
   
}
void main()
{
  int ca,mony,t1=0,m=2;
    scanf("%d",&ca);
    if (ca<=3)
    {
     mony=2;
     printf("%d",mony);
    }
else
    caculateChareg(m,ca,t1);
} 我不知道这个是你想要的吗??
2010-12-02 15:34
快速回复:帮忙看看,谢谢!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020313 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved