一个整型数组有10个元素,编写程序删除所有值为n的元素。

要求(1)主函数完成n的输入,数组元素输入以及删除后数组元素的输出。

(2)删除功能用子函数完成。

代码如下:

#include <stdio.h>

#include <string.H>

char *fun(char a[])

{

    int i,j,k=strlen(a);

    char n;

    printf("请输入您要删除的数");

    fflush(stdin);

    scanf("%c",&n);

    for(i=0;i<k;i++)

    if(a[i]==n)

    {

        for(j=i;j<k;j++)

        a[j]=a[j+1];

        k--;

        i--;

    }

    return a;

}

int main()

{

    char a[81];

    printf("请输入要输入的数组元素:\n");

    scanf("%s",a);

    printf("删除后的数组顺序为%s",fun(a));

}

程序运行截图如下:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-12-07
#include<stdio.h>

int fun(int arr[],int res[],int n)
{
int i,num=0;
for(i=0;i<10;i++)
if(n!=arr[i])
res[num++]=arr[i];
return num;
}

int main()
{
int res[10],arr[10];
int num,n,i;
scanf("%d",&n);
for(i=0;i<10;i++)
scanf("%d",&arr[i]);
num=fun(arr,res,n);
for(i=0;i<num;i++)
printf("%d ",res[i]);
return 0;
}本回答被提问者和网友采纳
第2个回答  2015-10-13
for(int i=1;i<=10;i++)
    if(a[i]==10)a[i]=-1;
//在此程序中我做了一个flag,即-1表示元素为空

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网