当前位置:首页 » 操作系统 » c删除算法

c删除算法

发布时间: 2024-02-23 16:58:34

‘壹’ c语言 (删除算法)随机输入10个整数存入数组中,再输入一个key值,若数组中有与key相同的值,删除之;若

我写了一个,严格说不算删除数组中与key相同的值,不过你可以改一下。
#include <stdio.h>
int main()
{
int i,j=0,key,a[10];
printf("请输入10个整数:\n");
for(i=0;i<10;++i)
{
scanf("%d",&a[i]);
}
printf("请输入一个你想删除的整数key值:\n");
scanf("%d",&key);
for(i=0;i<10;++i)
{
if(a[i]==key)j=i; //j代表与key值相同的数的位置
}
if(j==0)
printf("%d不存在!\n",key);
else
{
printf("新数组:\n");
for(i=0;i<10;++i)
{
if(i!=j)
printf("%d ",a[i]);
}
}
return 0;
}

‘贰’ 单链表的删除算法,为什么这道题选A而不选c呢求告知多谢!!!

C选项最后那句是free(q),但是我们要删除的是结点A,而不是A的下一个结点
A选项,把p的数据换成了下一个结点的数据,达到删除的目的,而同时下一个结点q就没有用了,那最后要free(q)

‘叁’ 求助C语言 单链表的插入、删除算法 的一些问题

第一个问题和第三个问题都是引用的意思,就是在函数中改变该变量的值会影响调用的地方的值,同时这样如果是大的对象,不是复制一个值而是原来的变量,只是一个别名。
第二个问题&&是与的意思,也就是说当p指针不为空并且j < i-1时候执行循环
最后一个三句话意思是删除一个元素,在此处删除的是指针q指向的元素,用q指向要删除的元素,然后第二句话是让当前指针的下一个元素指向q的下一个元素,也就是删除了q,然后把要删除的元素的值也就是data赋给e变量
不知道解释清楚了没有,要是不行再联系我。

热点内容
linux下ntp服务器搭建 发布:2024-09-08 08:26:46 浏览:742
db2新建数据库 发布:2024-09-08 08:10:19 浏览:171
频率计源码 发布:2024-09-08 07:40:26 浏览:778
奥迪a6哪个配置带后排加热 发布:2024-09-08 07:06:32 浏览:101
linux修改apache端口 发布:2024-09-08 07:05:49 浏览:209
有多少个不同的密码子 发布:2024-09-08 07:00:46 浏览:566
linux搭建mysql服务器配置 发布:2024-09-08 06:50:02 浏览:995
加上www不能访问 发布:2024-09-08 06:39:52 浏览:811
银行支付密码器怎么用 发布:2024-09-08 06:39:52 浏览:513
苹果手机清理浏览器缓存怎么清理缓存 发布:2024-09-08 06:31:32 浏览:554