急求:C语言题目的答案,用最简单的方法做!!!!
对一个长度为10的整型数组,实现以下功能:1.输入数组元素的值
2.在数组中查找值为x的元素,找到的话要输出元素的值以及所在位置,找不到的话输出查无此数。x的值由键盘输入。
3.在数组中插入一个值为e的元素,插入位置为i。e,i的值由键盘输入。
4.在数组中删除一个值为m的元素,如果不能删除输出无法删除此数。m的值由键盘输入。
5.输出数组中元素的值。
每项功能要求分别用一个函数来实现,完成功能3后要输出一遍所有元素的值,完成功能5后也要输出一遍所有元素的值。
追问:可不可以再写个实验分析和做法?
答案:#include
void inputnum(int *a,int *len)
{
int ch;
*len=0;
printf("input number (input -1 to end input function):\n");
do{
scanf("%d",&ch);
if ((*len>10)||(ch==-1)){break;}
a[*len]=ch;
(*len)++;
}while (1);
}
void find(int *a,int len)
{
int x,i;
printf("input the number you want scan:\n");
scanf("%d",&x);
for (i=0;i(*len+1))){printf("Can't insert number!\n");return;}
for (j=(*len);j>=i;j--)
{a[j]=a[j-1];}
a[i-1]=e;(*len)++;
printf("Now The array is:\n");
for(i=0;i<(*len);i++)
{printf("%d ",a[i]);}
printf("\n");
}
void del(int *a,int *len)
{
int m,j,i;
if ((*len)<=0) {printf("Can't delete number!\n");return;}
printf("Please Input the m:\n");
scanf("%d",&m);
for (i=0;i<(*len);i++) if(m==a[i]) break;
if (i==(*len)) {printf("not found!\n");return;}
for (j=i;j<(*len-1);j++)
{a[j]=a[j+1];}
(*len)--;
printf("Now The array is:\n");
for(i=0;i<(*len);i++)
{printf("%d ",a[i]);}
printf("\n");
}
void display(int *a,int len)
{
int i;
printf("The array is:\n");
for(i=0;i0);
}
上一个:在C语言中运行程序时最常出现的有那些错误?
下一个:用C语言编写一个图书管理系统(录入、查询、排序,文件操作)…………