读书人

求问~此程序是否有错?该如何处理

发布时间: 2012-02-07 17:45:36 作者: rapoo

求问~~此程序是否有错?
题目:输入十个不相同的元素到数组a中,再输入一个数k,查看a中是否有值为
x的元素。若有,则把该元素删除,后面的元素向前移;若没有,则将x加
入a中原来的元素后面,并输出程序所做的操作名称“删除”或“插入”。

#include "stdio.h "
void main()
{int a[10]={4,7,3,8,11},i=0,j,k,flag=0,p;
scanf( "%d ",&k ";
clrscr();
while (a[i])
{ if (a[i]==k)
{ j=i;flag=1;
while (a[j+1])
{ a[j]=a[j+1];j++;}
printf( "cha ru ");}
i++;}
if (flag==0)
{ a[i]=k;printf( "shan chu ");}
getch();
}

[解决办法]
若没有,则将x加
入a中原来的元素后面???
————————————————————
这句什么意思?原来是哪里?
[解决办法]
#include "stdio.h "
void main()
{int a[10]={4,7,3,8,11},i=0,j,k,flag=0,p;
scanf( "%d ",&k);
clrscr();
while (a[i])
{ if (a[i]==k)
{ j=i;flag=1;
while (a[j+1])
{ a[j]=a[j+1];j++;}
printf( "cha ru ");}
i++;}
if (flag==0)
{ a[i]=k;printf( "shan chu ");}
getch();
}
[解决办法]
#include <stdio.h>
#include <conio.h>

void main()
{
int a[10]={4,7,3,8,11};
int i=0,j,k,flag=0,p;

scanf( "%d ",&k);

while (a[i])
{
if (a[i]==k)
{
j=i;
flag=1;
while (a[j])
{
a[j]=a[j+1];
j++;
}
printf( "删除 ");
}
i++;
}
if (flag==0)
{
a[i]=k;
printf( "插入 ");
}
getch();
}

读书人网 >C语言

热点推荐