第八次作业(C语言)

//输入一个正整数,在输入n个整数,将它们从大到小排序//

#include<stdio.h>
int main()
{
 //输入

int n,i,j,max,t;
 int a[10];

 printf("Enter n:");

 scanf("%d",&n);
 for(i=0;i<n;i++)
  scanf("%d",&a[i]);
//排序    

    for(j=0;j<n-1;j++){
 max=j;
      for(i=j+1;i<n;i++)
    if(a[max]<a[i]) 
   max=i;t=a[max];a[max]=a[j];a[j]=t;}
    for(i=0;i<n;i++)
 /printf("%d\t",a[i]);

 printf("\n");

 return 0;
}

//求输入一批整数中出现次数最多的数//

#include<stdio.h>

 


int main()
{

 //输入

int a[10],b[1000];

  int i,n,x;
  printf("Enter n:");
  scanf("%d",&n);

for(i=0;i<n;i++)

scanf("%d",&b[i]);
 //  算法设计  

for(i=0;i<n;i++){
    x=b[i];

    while(x>0){
    a[x%10]++;
    x/=10;
 }
  }
  for(i=1,x=0;i<10;i++)
  if(a[x]<a[i])
   x=i;
   printf("%d",x);
   for(i=x+1;i<10;i++)

    if(a[x]==a[i])

//输出

printf("%d",i);

printf("\n");
return 0;
}

//判断上三角矩阵//

#include<stdio.h>

 

 

int main()
{
  //输入//

int a[6][6];

  int n,i,j,xx=1;

  printf("Enter n:");
  scanf("%d",&n);
  for(i=0;i<n;i++)
     for(j=0;j<n;j++)
     scanf("%d",&a[i][j]);
        ffor(j=0;j<i;j++)
              if(a[i][j]!=0){
               printf("NO\n");
               x=0;
               break;
     }
 if(x==1)
printf("YES\n");
return 0;
}

                                                               心得体会

该题涉及到一维数组和二维数组:1、一维数组的选择排序法;2、分类统计;3、二维数组的定义与引用及二维数组的编程。

写程序过程中感觉不完善 ,但是就是不知道怎么去修改;经过几天的思考,算法算是想明白了,但是程序知识点还不太明白怎么去用(比如说:一维数组的编程)。

 

posted @ 2019-06-10 21:47  唐雨杰  阅读(197)  评论(0)    收藏  举报