帮忙调试一个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;
#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~的主要内容,如果未能解决你的问题,请参考以下文章