c语言数组基础编程题(c语言数组的题)
c语言数组编程题?
#includestdio.h
int sum(int *a,int *b)
{
for(int i=6,j=0;i10;j++,i++)
a[i]=b[j];
}
int main()
{
int a[11],b[5];
for(int i=0;i6;i++)
scanf("%d",a[i]);
for(int i=0;i4;i++)
scanf("%d",b[i]);
sum(a,b);
for(int i=0;i10;i++)//将合并后的数组排序
for(int j=0;j9-i;j++)
if(a[j]a[j+1])
{
int t;
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
for(int i=0;i10;i++)
printf("%d ",a[i]);
return 0;
}
C语言的数组编程题,求大神解答?
#include stdio.h
#include stdlib.h
#include string.h
int main(void)
{
int *array;
int n,i,j,z,s=0,q=0;
int result[10]={0}; //存放众数
printf("请输入数组元素数量\r\n");
printf("n=");
scanf("%d",n);
array=(int *)malloc(n*sizeof(int));
printf("请输入数组元素\r\n");
printf("array=");
for(i=0;in;i++)
{
scanf("%d",array[i]);
}
for(i=0;in;i++)
{
z=0;
for(j=i;jn;j++) //计数出当前数据出现的次数
{
if(array[i]==array[j])
{
z++;
}
}
printf("z=%d\r\n",z);
if(z=n/2) //如果当前元素的数量超过了数组大小的一半不用往下分析了
{
result[q]=array[i];
break;
}
else if(zs)
{
memset(result,0,10);
q=0;
result[q]=array[i];
s=z;
}
else if(z==s)
{
result[++q]=array[i];
}
}
printf("Sample Output:\r\n");
if(((q+1)*s!=n)(q5)) //按理来说10个数据众数应该不会超过4个,而前半部分避免了出现的次数相同
{
for(j=0;j=q;j++) //打印出结果
{
printf("%d\r\n",result[j]);
}
}
else //如果没有就输出一个NO
printf("NO\r\n");
free(array);
return 0;
}
c语言数组基础题目,新手求解
#include?stdio.h
#include?stdlib.h
#include?time.h
int?Get3Num(int?a[],int?b[],int?n)
{
int?i;
int?sum=0;
for(i=0;in;i++)
{
if(a[i]%3==0)
{
b[sum]?=?a[i];
sum++;
}
}
return?sum;
}
int?main()
{
int?num[20];
int?num_3[20];
int?i,j,sum;
srand((unsigned?int)time(NULL));
for(i=0;i20;i++)
{
num[i]?=?rand()%99+1;
}
for(i=0;i4;i++)
{
for(j=0;j5;j++)
{
printf("%d\t",num[5*i+j]);
}
printf("\n");
}
sum?=?Get3Num(num,num_3,20);
if(sum==0)
{
printf("NO\n");
}
else
{
for(i=0;isum;i++)
{
printf("%d\t",num_3[i]);
}
}
}
C语言数组编程题?
每次比较两个数组中的头上一个元素,选择一个小的元素复制到新数组中,同时,这个数组中的未处理的元素减少一个,直到两个数组中,有一个数组全部完成。最后把没有清除掉的元素全部复制到新的数组中,这样就完成了两个有序数组的合并。