菜单第1项完成:
输入一组整数,以-1作为结束的标志,用数组s接收这组数,输出数组中元素的个数和所有元素的值(规定这组数不超过100个,数组中的元素值可以重复出现;例如,输入6 9 5 4 6 7 5 6 8 6 6 2 3 -1,则元素个数为:13) 。
菜单第2项完成:
在完成第1项的基础上,输入一个整数x,将s中值等于输入值x的所有元素从数组中删除,并输出删除后元素的个数和数组元素的各个值(例如, 输入6,则结果为:个数=8 ; 数组元素为: 9 , 5, 4 , 7 ,5 , 8 ,2 ,3 )。
菜单第3项完成:
在完成第2项的基础上,将数组s按从小到大的顺序排序后输出。
菜单第4项完成:
在完成第3项的基础上,输入一个整数,将其插在s的合适位置上,保持从小到大的顺序不变,并输出插入后元素的个数和数组元素的各个值。
菜单第5项完成:
在完成第4项的基础上,求这组数的平均值并输出。
注意:
1、由于需要对数组中的元素进行插入和删除运算,规定操作过程中数的个数不超过100个,定义的数组大小为100即可,有可能浪费;在多种操作中需要知道数组中元素的个数,一定要想办法记住每一项操作前后数组中元素的个数。
2、由于输出数组元素要多次使用,可以编一输出函数,多次调用完成输出。
代码:
#include<stdio.h>
int one(int s[]);
int two(int s[],int x);
void three(int s[],int x);
int four(int s[],int x);
void five(int s[],int x);
int main()
{
int x,n;
int s[100];
printf("请输入你要进行的操作序号:\n");
do{
printf("1:输入输出整数\n");
printf("2:删除某个元素\n");
printf("3:排序\n");
printf("4:添加\n");
printf("5:求平均值\n");
printf("6:退出程序\n");
scanf("%d",&n);
switch(n)
{
case 1:
x=one(s);
break;
case 2:
x=two(s,x);
break;
case 3:
three(s,x);
break;
case 4:
x=four(s,x);
break;
case 5:
five(s,x);
break;
}
}while(n!=6);
}
int one(int s[])
{
int i=0,j;
printf("请输入一组整数一‘-1’作为结尾:");
do{
scanf("%d",&s[i]);
i++;
}while(s[i-1]!=-1);
printf("共有%d个",i-1);
printf("输入的整数:");
for(j=0;j<i-1;j++)
{
printf("%5d",s[j]);
}
printf("\n");
return i-1;
}
int two(int s[],int x)
{
int i=0,j,a;
printf("请输入要删除的数字:");
scanf("%d",&a);
for(i;i<x;i++)
{
if(s[i]==a)
{
for(j=i;j<x-1;j++)
{
s[j]=s[j+1];
}
x--;
i--;
}
}
printf("删除后整数个数为:%d\n",x);
printf("删除后的整数都为:\n");
for(i=0;i<x;i++)
{
printf("%5d",s[i]);
}
printf("\n");
return x;
}
void three(int s[],int x)
{
int i,j,k,team;
for(i=0;i<x;i++)
{
k=i;
for(j=i;j<x;j++)
{
if(s[j]<s[k])
{
k=j;
}
}
if(k!=i)
{
team=s[i];
s[i]=s[k];
s[k]=team;
}
}
for(i=0;i<x;i++)
{
printf("%4d",s[i]);
}
printf("\n");
}
int four(int s[],int x)
{
printf("请输入要加入的整数:");
scanf("%d",&s[x]);
x++;
printf("加入后整数的个数为:%d",x);
printf("\n");
three(s,x);
printf("\n");
return x;
}void five(int s[],int x)
{
int i;
float sum=0.0;
for(i=0;i<x;i++)
{
sum=sum+s[i];
}
printf("平均值为:%f",sum/x);
printf("\n");
}
若有不足,可以留言。谢谢!!!
本文介绍如何使用C语言实现一个菜单模块,包括接收整数、删除特定值、排序、插入元素和计算平均值等功能。通过具体实例展示了数组在不同操作中的应用,同时强调了操作过程中数组元素个数的管理和输出函数的实用性。
3111

被折叠的 条评论
为什么被折叠?



