当前位置:首页 » 操作系统 » 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变量
不知道解释清楚了没有,要是不行再联系我。

热点内容
网络硬盘录像机存储 发布:2025-01-15 18:48:20 浏览:892
大学生java课程培训 发布:2025-01-15 18:45:53 浏览:486
asp网络验证源码 发布:2025-01-15 18:39:10 浏览:889
我的世界100人服务器电脑配置 发布:2025-01-15 18:38:02 浏览:227
抽盒机算法 发布:2025-01-15 18:31:07 浏览:253
万网云服务器云虚拟主机 发布:2025-01-15 18:20:58 浏览:949
手动安装交叉编译链 发布:2025-01-15 18:15:30 浏览:565
java调用clinux 发布:2025-01-15 18:13:02 浏览:294
如何给孩子配置一份保险 发布:2025-01-15 18:07:53 浏览:457
思科模拟器ftp配置 发布:2025-01-15 18:01:53 浏览:198