| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 624 人关注过本帖
标题:[求助]有一个错误很是头痛
只看楼主 加入收藏
kingyupeng
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-2-28
收藏
 问题点数:0 回复次数:2 
[求助]有一个错误很是头痛

//定义一个结构体变量(包括年、月、日),写一个days函数实现计算是一年中的第几天?由函数将年、月、日传递给days函数,计算后将日子数传回主函数输出

#include<stdio.h>
struct dayss //这是定义结构体变量
{
int y;
int m;
int d;
}di;
int days(struct dayss di) //这是计算一年当中第几天的函数
{
int day[2][12]={{31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},{31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}};
int leap,i;
if((di.y%4==0 && di.y%100!=0) || (di.y%400==0))
leap=1;
else
leap=0;
for(i=0;i<di.m-1;i++)
di.d+=day[leap][i];
return di.d; //最后返回一年当中第几天的值
}
void main()
{
struct dayss di;
int days;
printf("请输入年份:");
scanf("%d",&di.y);
printf("请输入月份:");
scanf("%d",&di.m);
printf("请输入天数:");
scanf("%d",&di.d);
days=days(di); //调用函数

printf("%d年%d月%d日是一年当中第%d",di.y,di.m,di.d,days);
}





C:\Documents and Settings\英雄\桌面\aaa\Cpp1.cpp(30) : error C2064: term does not evaluate to a function
Error executing cl.exe.

Cpp1.exe - 1 error(s), 0 warning(s)

搜索更多相关主题的帖子: int 函数 头痛 days 变量 
2006-03-21 15:56
lj_860603
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:714
专家分:0
注 册:2006-1-25
收藏
得分:0 
void main()
{
struct dayss di;
int days;
printf("请输入年份:");
scanf("%d",&di.y);
printf("请输入月份:");
scanf("%d",&di.m);
printf("请输入天数:");
scanf("%d",&di.d);
days=days(di); //调用函数

printf("%d年%d月%d日是一年当中第%d",di.y,di.m,di.d,days);
}

看见这三个红色的days没有?因为你定义的变量的调用的函数名相同,所以编译器无法识别清楚.把这个变量改成其他名字就OK了``

我的原则很简单:不做不喜欢的事!
2006-03-21 16:24
cordier
Rank: 2
等 级:论坛游民
威 望:1
帖 子:449
专家分:14
注 册:2006-2-9
收藏
得分:0 
#include<stdio.h>
struct dayss //这是定义结构体变量
{
int y;
int m;
int d;
}di;
int days(struct dayss di) //这是计算一年当中第几天的函数
{
int day[2][12]={{31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},{31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}};
int leap,i;
if((di.y%4==0 && di.y%100!=0) || (di.y%400==0))
leap=1;
else
leap=0;
for(i=0;i<di.m-1;i++)
di.d+=day[leap][i];
return di.d; //最后返回一年当中第几天的值
}
void main()
{
struct dayss di;
int days; /*这个变量名,与您的函数名重复,改一下就可以了。*/
printf("请输入年份:");
scanf("%d",&di.y);
printf("请输入月份:");
scanf("%d",&di.m);
printf("请输入天数:");
scanf("%d",&di.d);
days=days(di); //调用函数

printf("%d年%d月%d日是一年当中第%d",di.y,di.m,di.d,days);
}

2006-03-21 16:26
快速回复:[求助]有一个错误很是头痛
数据加载中...
 
   



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

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