| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 581 人关注过本帖
标题:简单的调用出错,求帮助!
只看楼主 加入收藏
sheng7728520
Rank: 1
来 自:yunnan
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-10-19
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:9 
简单的调用出错,求帮助!
给一个时间(秒数),要求转化为时分秒的形式。方法一中根据题目要求,时间为40000s,方法二中添加了时间输入,但结果出错,求助!
方法一
#include"stdio.h"
main()
{
int a,b,c,d,e;
a=40000;
b=40000/3600;
c=40000%3600;
d=c/60;
e=a%60;
printf("%d时%d分%d秒",b,d,e);
}
方法二(错误求助)
int chu(int b,int d,int e)
{int a,c;
printf("输入时间秒数");
scanf("%d",&a);
b=a/3600;
c=a%3600;
d=c/60;
e=a%60;
return(b,d,e);
}


#include"stdio.h"
main()
{
int g,h,l;

chu(g,h,l);
printf("%d时%d分%d秒",g,h,l);
}
搜索更多相关主题的帖子: include return 
2010-10-21 09:04
TGM316750432
Rank: 2
来 自:河南周口
等 级:论坛游民
帖 子:56
专家分:97
注 册:2010-8-27
收藏
得分:0 
int chu(int &b,int &d,int &e)
{int a,c;
printf("输入时间秒数");
scanf("%d",&a);
b=a/3600;
c=a%3600;
d=c/60;
e=a%60;
return 0;
}


#include"stdio.h"
main()
{
int g,h,l;

chu(g,h,l);
printf("%d时%d分%d秒",g,h,l);
}

这样试试看
2010-10-21 09:24
shafeilong
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:4
帖 子:236
专家分:1434
注 册:2009-3-21
收藏
得分:0 
返回值调用错误
2010-10-21 09:54
自由战士89
Rank: 5Rank: 5
等 级:职业侠客
帖 子:154
专家分:387
注 册:2010-9-2
收藏
得分:2 
在chu()函数里用printf("%d%d%d",b,d,e)输出
2010-10-21 11:04
tomywj
Rank: 2
等 级:论坛游民
帖 子:27
专家分:20
注 册:2010-7-20
收藏
得分:4 
程序代码:
int chu(int *b,int *d,int *e)
{int a,c;
printf("输入时间秒数");
scanf("%d",&a);
*b=a/3600;
c=a%3600;
*d=c/60;
*e=a%60;
return(b,d,e);
}


#include"stdio.h"
main()
{
int g,h,l;

chu(&g,&h,&l);
printf("%d时%d分%d秒",g,h,l);
getch();
}
测试正确!
2010-10-21 12:08
自由战士89
Rank: 5Rank: 5
等 级:职业侠客
帖 子:154
专家分:387
注 册:2010-9-2
收藏
得分:0 
传值调用怎么能在主函数中输出呢,形参不改变实参。改成传址调用可以在主函数中输出,但没传值简单,清晰,好看
#include"stdio.h"
int chu(int b,int d,int e)
{int a,c;
printf("输入时间秒数");
scanf("%d",&a);
b=a/3600;
c=a%3600;
d=c/60;
e=a%60;
printf("%d时%d分%d秒",b,d,e);
return(b,d,e);
}
main()
{
int g,h,l;

chu(g,h,l);

}
2010-10-21 12:29
sheng7728520
Rank: 1
来 自:yunnan
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-10-19
收藏
得分:0 
回复 2楼 TGM316750432
f:\c\正在进行\新建文本文档 (2).c(1) : error C2143: syntax error : missing ')' before '&'
f:\c\正在进行\新建文本文档 (2).c(1) : error C2143: syntax error : missing '{' before '&'
f:\c\正在进行\新建文本文档 (2).c(1) : error C2059: syntax error : '&'
f:\c\正在进行\新建文本文档 (2).c(1) : error C2059: syntax error : ')'
f:\c\正在进行\新建文本文档 (2).c(18) : warning C4013: 'chu' undefined; assuming extern returning int
执行 cl.exe 时出错.

新建文本文档 (2).obj - 1 error(s), 0 warning(s)


运行不了,但还是谢谢你!
2010-10-21 17:41
sheng7728520
Rank: 1
来 自:yunnan
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-10-19
收藏
得分:0 
回复 3楼 shafeilong
刚入门,看了好久了也没找到错误,但结果就是错了,谢谢你,以后还需你们多多帮助呢!
2010-10-21 17:43
sheng7728520
Rank: 1
来 自:yunnan
等 级:新手上路
帖 子:7
专家分:0
注 册:2010-10-19
收藏
得分:0 
回复 4楼 自由战士89
谢谢你,程序成功运行,这招绝了!
2010-10-21 17:53
TGM316750432
Rank: 2
来 自:河南周口
等 级:论坛游民
帖 子:56
专家分:97
注 册:2010-8-27
收藏
得分:4 
#include<stdio.h>
#include<stdlib.h>
int chu(int &b,int &d,int &e)  //C++中的引用可以拿来用
{int a,c;
printf("输入时间秒数");
scanf("%d",&a);
b=a/3600;
c=a%3600;
d=c/60;
e=a%60;
return 0;
}

main()
{
int g,h,l;

chu(g,h,l);
printf("%d时%d分%d秒",g,h,l);
system("pause");
}
图片附件: 游客没有浏览图片的权限,请 登录注册



这个问题主要是函数实参和形参的传递问题   调用函数传入的g,h,l是单向值传递  chu函数运行后的g,h,l是没法同时返回的  可以采用C++中的引用解决
或者值传递时采用指针
#include<stdio.h>
#include<stdlib.h>
int chu(int *b,int *d,int *e)   
{int a,c;
printf("输入时间秒数");
scanf("%d",&a);
*b=a/3600;
c=a%3600;
*d=c/60;
*e=a%60;
return 0;
}

main()
{
int g,h,l;

chu(&g,&h,&l);        //传递g,h,l的地址进入函数
printf("%d时%d分%d秒",g,h,l);
system("pause");
}
这样结果也一样
2010-10-21 23:47
快速回复:简单的调用出错,求帮助!
数据加载中...
 
   



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

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