注册 登录
编程论坛 C++教室

有个关于结构体数组的问题

zx582041666 发布于 2016-11-20 01:03, 1216 次点击
#include<iostream.h>
int day(int a,int b, int c);
int main()
{
  int m,n,f;
  cin>>m>>n>>f;
  cout<<day(m,n,f)<<endl;
return 0;
}

int day(int a,int b, int c)
{   
    int sum=0;
    int month1[12]={31,29,31,30,31,30,31,31,30,31,30,31};
     int month2[12]={31,28,31,30,31,30,31,31,30,31,30,31};
struct date
{
    int year;
    int month1[12];
     int month2[12];
    int Day;
}date1;
    if(b==1)

        return c;
  else if((a%400==0)||(a%100!=0)&&(a%4==0))
     {
      for(int i=0;i<b-1;i++)
          sum+=date1.month1[i];
  
          sum+=c;
     return sum;
  }
  else
       {
      for(int i=0;i<b-1;i++)
          sum+=date1.month2[i];
  
          sum+=c;
     return sum;
  }

}



这个是关于输出这年的第几天的    为什么我加了 date1.month2【i】和date1.month2【i】就出错,出现数据异常   而把date1.删除就可以  但是题目要运用结构体啊
1 回复
#2
yangfrancis2016-11-20 11:00
回复 楼主 zx582041666
把结构体的定义放到函数外面去看行不行
1