吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1410|回复: 4
收起左侧

[求助] 还是一个c语言数组的问题

[复制链接]
18362374790 发表于 2019-11-12 16:55
本帖最后由 18362374790 于 2019-11-12 16:57 编辑

1     #include <stdio.h>
2     #define UNM 10
3     int arrdel (int *,int,int); //函数用来进行所要求的的删除操作
4      void arrout (int *,int );  //函数用来输出数组中的数据
5     int getindex (int n);     //函数用来输入所删除元素的下标,函数中对输入的下标进行检查,若越界,则要求重新输入,直到正确为止
6     main ( )
7   {
8     int n,d,a[NUM]={21,22,23,24,25,26,27,28,29,30};
9     n=NUM;
10   printf("output primary date:\n");
11   arrout(a,n);
12   d=getindex(n);
13    n=arrdel(a,n,d);
14     printf("output the data after delete :\n");
15     arrout(a,n);
16   }
函数的调用原型过程暂不写了。
           在这个main中,第12,13行是什么意思?是第12行是把要删除的元素下标给d,然后第13行是删除数组a中的d所包含的下标元素吗?还有第12行的getindex函数后面怎么是n,n代表的是什么呢?
多谢各位大佬指教。         

免费评分

参与人数 2吾爱币 +1 热心值 +2 收起 理由
破长空锋 + 1 + 1 我也在学习C语言
zhangchang + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

条件日志 发表于 2019-11-12 17:05
n代表的是数组元素个数
条件日志 发表于 2019-11-12 17:06
第12行是扫描一个要删除的下标,n是最大值,也就是说输入的应比n小
bignuts 发表于 2019-11-12 17:06
n=NUM,就是一维数组的个数,估计是循环或判断用到,他在第5行注释写到了会检查是否超限。
没有子函数的代码,应该就是你说的 第12行是把要删除的元素下标给d,然后第13行是删除数组a中的d所包含的下标元素
kang000 发表于 2019-11-13 09:09
个人理解:
第12行的getindex(n),根据注释说明,函数会实现控制台提示输入一个数字x,在判断输入的x值是否比n大,也就是判断是否越界;如果越界,循环提示要求重新输入;否则函数返回x的值给d。
第13行的arrdel(a,n,d),a为传递a[0]的首地址;n为数组的长度;d为要删除的数组下标(具体是下标还是位置需要看函数的具体实现);之后将删除后的数组长度返回给n。

getindex函数的n,前面n=NUM;说明表示的是数组的长度。

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-30 09:59

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表