xianzhi157 2019-12-03 21:14 采纳率: 0%
浏览 580

编译报错为[Error] ld returned 1 exit status,但经检查无在运行的程序

//【日期】黑色星期五

#include "stdio.h"

#include

#include "math.h"
extern int a;
int fa(int b) //判断为星期几的函数,返回值x

{int c=13,x,y=0;

        if(b>12||b<1){
        printf("month is error.\n"); goto out;  }  
        if(a<=1900){
        printf("year is error.\n"); goto out;   }  
        if(((b==1||b==3||b==5||b==7||b==8||b==10||b==12)&&c>31)||(((a%4==0&&a%100!=0)||(a%400==0))&&b==2&&c>29)||((a%4!=0||a%100==0)&&c>28)||((b==6||b==4||b==9||b==11)&&c>31)||(c<1)){
        printf("day is error.\n");  goto out; }     
        switch(b)    
        {   case 1:x=c%7+1;break;    
            case 2:x=(31+c)%7+1;break;    
            case 3:x=(31+28+c)%7+1;break;    
            case 4:x=(31+28+31+c)%7+1;break;    
            case 5:x=(31+28+31+30+c)%7+1;break;    
            case 6:x=(31+28+31+30+31+c)%7+1;break;    
            case 7:x=(31+28+31+30+31+30+c)%7+1;break;    
            case 8:x=(31+28+31+30+31+30+31+c)%7+1;break;    
            case 9:x=(31+28+31+30+31+30+31+31+c)%7+1;break;    
            case 10:x=(31+28+31+30+31+30+31+31+30+c)%7+1;break;    
            case 11:x=(31+28+31+30+31+30+31+31+30+31+c)%7+1;break;    
            case 12:x=(31+28+31+30+31+30+31+31+30+31+30+c)%7+1;break;    
        }
        if(a>2013)x+=(a-2013)/4+(a-2013);    
        if(a<2013)   {  
        x-=(2016-a)/4+(2013-a)-7;   
        x+=7*((2015-x)/7);  
                    }  

        if(x>=7)x=x%7;    
        out:  
        return x;    
         } 

//主函数判断某一年的13号是不是为星期五 
int main()
{
int  fa(int b) ; 
int i=0,j[10],b,s;

scanf("%d",&a);
for(b=1;b<13;b++){
    if(fa(b)==5){
        j[i]=b;
        i++;
    }
    } 
s=i;
printf("There are %d Black Fridays in year %d.\n",i,a);
printf("They are:\n");

for(i=0;i<s;i++){
    printf("%d/%d/13\n",a,j[i]);
}

}

  • 写回答

1条回答 默认 最新

  • chenxizhan1995 2019-12-04 09:21
    关注

    extern int a;这一句,换成int a;就行了。
    有 extern 表示这只是声明,但没有定义(意思是:a是个int类型的变量;但它不在这里定义,编译器你要到别处去找);
    这个文件一直到末尾都没有变量a的定义,所以链接时找不到定义。

    评论

报告相同问题?

悬赏问题

  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥85 maple软件,solve求反函数,出现rootof怎么办?
  • ¥15 求chat4.0解答一道线性规划题,用lingo编程运行,第一问要求写出数学模型和lingo语言编程模型,第二问第三问解答就行,我的ddl要到了谁来求了
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥15 maple软件,用solve求反函数出现rootof,怎么办?
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题