沉稳的紫外线 2022-11-17 09:34 采纳率: 62.5%
浏览 48
已结题

c语言数据结构顺序表查找第i个元素

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

顺序表查找第i个值,返回值没有,但是我已经加返回值了

用代码块功能插入代码,请勿粘贴截图
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#define OK   1
#define ERROR  0
#define TRUE 1
#define FALSE 0
#define ElemType int
#define    MAXSIZE  100   /*此处的宏定义常量表示线性表可能达到的最大长度*/
typedef  struct
{ 
    ElemType  elem[MAXSIZE];  /*线性表占用的数组空间*/
    int       last;    /*记录线性表中最后一个元素在数组elem[ ]中的位置(下标值),空表置为-1*/
}SeqList;

int  Locate(SeqList L, ElemType e)
{    
    int i=0;        /*i为扫描计数器,初值为0,即从第一个元素开始比较*/
    while ((i<=L.last)&&(L.elem[i]!=e))        /*顺序扫描表,直到找到值为key的元素, 或扫描到表尾而没找到*/
        i++; 
    if  (i<=L.last)
        return(i+1);  /*若找到值为e的元素,则返回其序号*/
    else
        return(-1);  /*若没找到,则返回空序号*/
}

void main()
{
    SeqList l;
    int p,q,r;
    int i;
    printf("请输入线性表的长度:");
    scanf("%d",&r);
    l.last = r-1;
    printf("请输入线性表的各元素值:\n");
    for(i=0; i<=l.last; i++)
    {
        scanf("%d",&l.elem[i]);
    }
    printf("请输入要查找的元素值:\n");
    scanf("%d",&q);
    p=Locate(l,q);
    if(p == -1)
        printf("在此线性表中没有该元素!\n");
    else
        printf("该元素在线性表中的位置为:%d\n",p);
}

运行结果及报错内容

[Error] '::main' must return 'int'

我的解答思路和尝试过的方法

locate已经有返回值了,为什么主函数返回值返回不出来

  • 写回答

2条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-11-17 12:08
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月20日
  • 已采纳回答 11月20日
  • 创建了问题 11月17日

悬赏问题

  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?