作业八

1./*选择法排序。输入一个正整数n(1<n<=10),再输入n个
整数,将他们从大到小排序后输出。试编写相应程序。*/

#include<stdio.h>
int main (void)
{
int i,index,k,n,t;
int a[10];
printf("请输入要输入数据的个数n:");
scanf("%d",&n);
printf("请输入你的%d数据;",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(k=0;k<n-1;k++)
{
index=k;
for(i=k+1;i<n;i++)
if(a[i]>a[index])
index=i;
t=a[index];
a[index]=a[k];
a[k]=t;
}
printf("排序结果:");
for(i=0;i<n;i++)
printf("%4d",a[i]);
printf("\n");
return 0;
}

2.求一批整数中出现最多的数字。输入一个正整数n(1<n<=1000),再输入n个整数,分析每个整数的每一位数字,求出现次数最多的数字。

#include<stdio.h>
int main(void)
{
int n,i,max=0,t,a[10]={0};
printf("Enter n:");
scanf("%d",&n);
printf("Enter :",n);
for(i=0;i<n;i++){
scanf("%d",&t);
while(t!=0){
a[t%10]++;
t/=10;
}
}
for(i=0;i<10;i++){
if(max<a[i])
max=a[i];
}
printf("出现最多次数的数字是:",max);
for(i=0;i<10;i++)
if(a[i]==max)
printf("%d ",i);
printf("\n");
return 0;
}

 

 3./*判断上三角矩阵。输入一个正整数n(1<=n<=6)和n阶矩阵a中的元素,如果a是上三角矩阵,输出“YES”,
否则,输出“NO”。上三角矩阵指主对角线以下的元素都为0的矩阵,主对角线为从矩阵的左上角至右下角的连线。试编写相应程序。*/

#include<stdio.h>
int main(void)
{
int a[6][6],flag,i,j,n;
printf("enter n:");
scanf("%d",&n);
printf("enter array:\n");
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
flag=1;
for(i=0;i<n;i++)
for(j=0;j<i;j++)
if(a[i][j]!=0)
flag=0;
if(flag)
printf("YES\n");
else
printf("NO\n");
return 0;
}

 

心得:作业完成的很紧张,其中出现了许多错误,改了半天也改不过来,好在最后又改了过来,总之完成的很吃力。

 

posted on 2019-06-10 21:59  马丽花  阅读(359)  评论(0编辑  收藏  举报