C语言习题 帮忙解答一下 谢谢
以下几个问题请分别解答这是3个独立的问题1,用选择法对10个整数排序2,求一个3*3矩阵对角线元素之和3,已有一个已排列好的数组,输入一个数,要求按原来的规律将它插如数组...
以下几个问题请分别解答 这是3个独立的问题
1,用选择法对10个整数排序
2,求一个3*3矩阵对角线元素之和
3,已有一个已排列好的数组,输入一个数,要求按原来的规律将它插如数组中. 展开
1,用选择法对10个整数排序
2,求一个3*3矩阵对角线元素之和
3,已有一个已排列好的数组,输入一个数,要求按原来的规律将它插如数组中. 展开
展开全部
1.
void sort(int a[])
{
int i,j,k,t;
for(i=0;i<10;i++)
{
for(j=i+1,k=i;j<10;j++)
{
if(a[j]>a[k])
k=j;//用k记录剩余数字中最大值的下标
}
if(k!=i)
{
t=a[i];
a[i]=a[k];
a[k]=t;
}
}
}
2.
int func(int a[3][3])
{
int i,j,sum=0;
for(i=0;i<3;i++)
{
j=3-1-i;
if(i==j)
sum+=a[i][i];
else
sum+=a[i][i]+a[i][j];
}
return sum;
}
3.假设是升序,
/* count记录当前数组的元素个数,返回插入后数组元素个数 */
int insert(int a[],int count)
{
int i,j,n;
puts("input n:");
scanf("%d",&n);
for(i=0;i<count;i++)
{
if(n<a[i])
break;
}
for(j=count;j>i;j--)
a[j]=a[j-1];
a[i]=n;
return count+1;
}
void sort(int a[])
{
int i,j,k,t;
for(i=0;i<10;i++)
{
for(j=i+1,k=i;j<10;j++)
{
if(a[j]>a[k])
k=j;//用k记录剩余数字中最大值的下标
}
if(k!=i)
{
t=a[i];
a[i]=a[k];
a[k]=t;
}
}
}
2.
int func(int a[3][3])
{
int i,j,sum=0;
for(i=0;i<3;i++)
{
j=3-1-i;
if(i==j)
sum+=a[i][i];
else
sum+=a[i][i]+a[i][j];
}
return sum;
}
3.假设是升序,
/* count记录当前数组的元素个数,返回插入后数组元素个数 */
int insert(int a[],int count)
{
int i,j,n;
puts("input n:");
scanf("%d",&n);
for(i=0;i<count;i++)
{
if(n<a[i])
break;
}
for(j=count;j>i;j--)
a[j]=a[j-1];
a[i]=n;
return count+1;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询