帮忙调试一个C语言程序,删除数组中的一个元素(函数调用),3Q~

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了帮忙调试一个C语言程序,删除数组中的一个元素(函数调用),3Q~相关的知识,希望对你有一定的参考价值。

#include <stdio.h>
int count=9;
int delete(int num[],int delNum)

int i,flag=0;
for(i=0;i<count;i++)

if(num[i]==delNum)

flag=1;
break;


if(flag==1)
printf("%d数据存放在num数组中的%d的位置上\n",delNum,i);<br> for(i=0;i<count;i++)<br> num[i]=num[i+1];<br>
count--;
return 0 int main(int argc, char *argv[])
int num[15]=1,2,4,6,8,10,13,16,18;
//int count=9;
int flag;
int i;
int delNum;
printf("请输入你要删除的数据:");
scanf("%d",&delNum);
flag=delete(num,delNum);
if(flag==1) printf("删除成功\n");
else printf("删除失败\n");
for(i=0;i<count;i++)

printf("%5d",num[i]);

return 0;

如果你只是删掉为k的值,然后输入的话,只要一个for循环就够了,把不等于k的值直接输出就行,不用再存入数组里了,如:
#include<stdio.h>
void
main()

int
n,k,x[100000];
int
i,flag=0;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&x[i]);
scanf("%d",&k);
for(i=0;i<n;i++)
if(x[i]!=k)

if(flag==0)
//(让第一个输出前不加空格)

printf("%d",x[i]);
flag=1;

else
printf("
%d",x[i]);

printf("\n");
参考技术A #include <stdio.h>
int count=9;
main()

int num[15]=1,2,4,6,8,10,13,16,18;
int flag;
int i;
int delNum;
printf("请输入你要删除的数据:");
scanf("%d",&delNum);
flag=delete(num,delNum);
if(flag==1)
printf("删除成功\n");
else printf("删除失败\n");
for(i=0;i<count;i++)
printf("%5d",num[i]);
return 0;

int delete(int num[],int delNum)

int i,flag=0;
for(i=0;i<count;i++)

if(num[i]==delNum)

flag=1;
break;


if(flag==1)

printf("%d数据存放在num数组中的%d的位置上\n",delNum,i);
for(i=0;i<count;i++)
num[i]=num[i+1];
count--;
return flag;

参考技术B 你调试到哪一行出错呢?

c语言中怎样用一个函数删除字符串中的一个元素?

参考技术A #include <stdio.h>
#include <string.h>
void remove_char(char *str, char c)
int i, j;
int len = strlen(str);
for (i = 0, j = 0; i < len; i++)
if (str[i] != c)
str[j++] = str[i];


str[j] = '\0';

int main()
char str[] = "Hello, world!";
char c = 'o';
remove_char(str, c);
printf("%s\n", str);
return 0;
参考技术B 可以自己写个函数,在源字符串中查找目标字符串并删除,后续字符依次前移。

以上是关于帮忙调试一个C语言程序,删除数组中的一个元素(函数调用),3Q~的主要内容,如果未能解决你的问题,请参考以下文章

c语言中怎样让一个有10个元素的数组输出5个元素后换行后再输出另外五个函数

C语言定义一个求数组n个元素的和的函数

C语言编写一个学生成绩管理系统

C语言数组的删除,插入

C语言程序问题,数组元素无法赋值?请大家帮忙看看

c语言,查找数组中是不是存在某个数?