ezthor 2021-12-21 15:22 采纳率: 100%
浏览 50
已结题

结构体元素排序问题在头歌平台上运行报错 dev上可以运行

问题遇到的现象和发生背景

头歌里运行报错

问题相关代码,请勿粘贴截图
#include <stdio.h>
#include <string.h>
#define N  4      /*  网址表大小  */
void sort(struct web webs[],int n);

struct web  /*  设计表示网址的结构  */
{
    /**********  Begin  **********/
    char srt[100];
    char name[100];
    char website[100]; 

    /**********   End   **********/
};
struct web webs[N];
struct web temp;


int main()
{
    /**********  Begin  **********/
    
    for(int i=0;i<N;i++){
        scanf("%s %s %s",&webs[i].srt,&webs[i].name,&webs[i].website);
    }
    char get[20];
    scanf("%s",get);
    
    sort(webs,N);
    for(int i=0;i<N;i++){
        printf("%s %s %s\n",webs[i].srt,webs[i].name,webs[i].website);
    }
    int len=strlen(get);
    int flag=0;
    for(int k=0;k<N;k++){
        if(strncmp(get,webs[k].srt,len)==0){
            flag=1;
            printf("%s",webs[k].website);
        }
    }
    if(flag==0) printf("未找到搜寻的网址");
    

    /**********   End   **********/
    return 0; 
}

void sort(struct web webs[],int n)
{
    /**********  Begin  **********/
    
    for(int i=0;i<N-1;i++){
        for(int j=0;j<N-1-i;j++){
            if(strcmp(webs[j].srt,webs[j+1].srt)>0){
                temp=webs[j+1];
                webs[j+1]=webs[j];
                webs[j]=temp;
            }
        }
    }

    /**********   End   **********/
}

运行结果及报错内容
0/3
src/step3/Step3_main.c:4:22: error: array type has incomplete element type ‘struct web’
void sort(struct web webs[],int n);
^~~~
src/step3/Step3_main.c:4:18: warning: ‘struct web’ declared inside parameter list will not be visible outside of this definition or declaration
void sort(struct web webs[],int n);
^~~
src/step3/Step3_main.c: In function ‘main’:
src/step3/Step3_main.c:29:7: error: type of formal parameter 1 is incomplete
sort(webs,N);
^~~~

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

1条回答 默认 最新

  • ezthor 2021-12-21 16:32
    关注

    把函数声明放在结构定义下面就好了,虽然不知道为什么

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月29日
  • 已采纳回答 12月21日
  • 创建了问题 12月21日

悬赏问题

  • ¥15 深度学习残差模块模型
  • ¥20 两个不同Subnet的点对点连接
  • ¥50 怎么判断同步时序逻辑电路和异步时序逻辑电路
  • ¥15 差动电流二次谐波的含量Matlab计算
  • ¥15 Can/caned 总线错误问题,错误显示控制器要发1,结果总线检测到0
  • ¥15 C#如何调用串口数据
  • ¥15 MATLAB与单片机串口通信
  • ¥15 L76k模块的GPS的使用
  • ¥15 请帮我看一看数电项目如何设计
  • ¥23 (标签-bug|关键词-密码错误加密)