在'function(int ans)'中起作用的参数太少

时间:2014-02-26 12:05:38

标签: c

这是我的功能声明

int boygroups(int ans);

这是我的功能定义

int boygroups(int ans) {             
switch (p) {
    case 1: printf("\n\n\n\t\t\t\t1. %s\n",songs[0].una);
        printf("\t\t\t\t2. %s\n",songs[0].pangalawa);
        printf("\t\t\t\t3. %s\n",songs[0].pangatlo);
        printf("\t\t\t\t4. %s\n",songs[0].pangapat); 
        break; 
    case 2: printf("\n\n\n\t\t\t\t1. %s\n",songs[1].una);
        printf("\t\t\t\t2. %s\n",songs[1].pangalawa);
        printf("\t\t\t\t3. %s\n",songs[1].pangatlo);
        printf("\t\t\t\t4. %s\n",songs[1].pangapat); 
        break;
    case 3: printf("\n\n\n\t\t\t\t1. %s\n",songs[2].una);
        printf("\t\t\t\t2. %s\n",songs[2].pangalawa);
        printf("\t\t\t\t3. %s\n",songs[2].pangatlo);
        printf("\t\t\t\t4. %s\n",songs[2].pangapat);      
        break;
    case 4: printf("\n\n\n\t\t\t\t1. %s\n",songs[3].una);
        printf("\t\t\t\t2. %s\n",songs[3].pangalawa);
        printf("\t\t\t\t3. %s\n",songs[3].pangatlo);
        printf("\t\t\t\t4. %s\n",songs[3].pangapat);       
        break; 

}        
}

我的声明和定义是一样的,我不知道为什么我会一直收到这样的错误。

1 个答案:

答案 0 :(得分:2)

为什么不简化整个事情:

int boygroups(int ans) {
  printf("\n\n\n\t\t\t\t1. %s\n",songs[p-1].una);
        printf("\t\t\t\t2. %s\n",songs[p-1].pangalawa);
        printf("\t\t\t\t3. %s\n",songs[p-1].pangatlo);
        printf("\t\t\t\t4. %s\n",songs[p-1].pangapat);       
}

这相当于你的男孩组功能,但要短得多。