
求大神帮忙编程,c++。小弟在此谢过,跪拜。
•编写一个程序实现如下功能:1)从键盘上输入N个整数(N的值由用户指定,N<1000)存入一数组中,将它们按照从小到大的顺序排列起来,输出排列后的数组值;2)...
•编写一个程序实现如下功能:1)从键盘上输入N个整数(N的值由用户指定,N<1000)存入一数组中,将它们按照从小到大的顺序排列起来,输出排列后的数组值;
2)统计数组中大于a小于b的元素个数并输出,a、b值由用户指定
3)检查整数x(由用户指定)值是否在这些数字当中,若在,返回其在数组中的位置(即下标值,可能不止一个),若不在则将x插入到相应位置,插入后数组仍有序; 展开
2)统计数组中大于a小于b的元素个数并输出,a、b值由用户指定
3)检查整数x(由用户指定)值是否在这些数字当中,若在,返回其在数组中的位置(即下标值,可能不止一个),若不在则将x插入到相应位置,插入后数组仍有序; 展开
1个回答
2013-06-07
展开全部
#include<stdio.h>
#include<stdlib.h>
#include<search.h>
int cmp(const void *a,const void *b)
{return *(int*)a-*(int*)b;}
int a[1002];
void sort(int *a,int n)
{
qsort(a,n,sizeof(a[0]),cmp);
}
int judge(int *a,int n,int x,int y)
{
int s=0,i;
for(i=0;i<n;i++)
if(a[i]>x&&a[i]<y)
s++;
return s;
}
void insert(int *a,int n,int x)
{
int i,*p;
p=(int*)lsearch(&x,&a,&n,sizeof(a[0]),cmp);
if(p)
{
printf("位置为:\n");
for(i=0;i<n;i++)
if(a[i]==*p)
printf("%d ",i);
}
else if(!p)
{
qsort(a,n,sizeof(a[0]),cmp);
}
}
int main()
{
int n,i,k,x,y;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
scanf("%d",&k);
switch(k)
{
case 1:sort(a,n);for(i=0;i<n;i++){printf("%d ",a[i]);}printf("\n");break;
case 2:scanf("%d",&k);insert(a,n,k);break;
case 3:scanf("%d %d",&x,&y);printf("%d\n",judge(a,n,x,y));break;
}
return 0;
}
#include<stdlib.h>
#include<search.h>
int cmp(const void *a,const void *b)
{return *(int*)a-*(int*)b;}
int a[1002];
void sort(int *a,int n)
{
qsort(a,n,sizeof(a[0]),cmp);
}
int judge(int *a,int n,int x,int y)
{
int s=0,i;
for(i=0;i<n;i++)
if(a[i]>x&&a[i]<y)
s++;
return s;
}
void insert(int *a,int n,int x)
{
int i,*p;
p=(int*)lsearch(&x,&a,&n,sizeof(a[0]),cmp);
if(p)
{
printf("位置为:\n");
for(i=0;i<n;i++)
if(a[i]==*p)
printf("%d ",i);
}
else if(!p)
{
qsort(a,n,sizeof(a[0]),cmp);
}
}
int main()
{
int n,i,k,x,y;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
scanf("%d",&k);
switch(k)
{
case 1:sort(a,n);for(i=0;i<n;i++){printf("%d ",a[i]);}printf("\n");break;
case 2:scanf("%d",&k);insert(a,n,k);break;
case 3:scanf("%d %d",&x,&y);printf("%d\n",judge(a,n,x,y));break;
}
return 0;
}
追问
我对这个一点都不会啊,大神,怎么运行的?
追答
是在C语言页面编辑吗?那就没错了,直接清空所有,然后把上面答案复制进去,直接运行就可以了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询