第四周作业

 
 

2019春第四周编程

 
作业属于哪个课程 c语言程序设计2
要求在哪里 2019春季学期第四周作业
我在这个课程的目标 学会一些排序法
作业在哪个具体方面帮助我实现目标 让我学会冒泡法 选择法
参考文献 冒泡排序 数组
选择法排序 (20 分)

本题要求将给定的n个整数从大到小排序后输出。

输入格式:

输入第一行给出一个不超过10的正整数n。第二行给出n个整数,其间以空格分隔。

输出格式:

在一行中输出从大到小有序的数列,相邻数字间有一个空格,行末不得有多余空格。

代码:

#include<stdio.h>
int main(void)
{
  int i,index,k,n,temp;
  int a[10];
  scanf("%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;
    temp=a[index];
    a[index]=a[k];
    a[k]=temp;
  }
  printf("%d",a[0]);
  for(i=1;i<n;i++)
  printf(" %d",a[i]);
  return 0;
}

思路

正确截图:

错误截图:

 

解决方法:先输出a[0]

输入一个正整数 n (1≤n≤10)和n 阶方阵a的元素,如果方阵a中的所有元素都沿主对角线对称,输出“Yes”, 否则,输出“No”。主对角线为从矩阵的左上角至右下角的连线,方阵a中的所有元素都沿主对角线对称指对所有i, k,a[i][k]和a[k][i]相等。输入输出示例如下:

输入:

3
1 2 3
4 5 6
7 8 9

输出:

No
#include <stdio.h>
int main(void)	
{	
   	int found, i, k, n;
   	int a[10][10];

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

 	found = 1;
   	for (i = 0; i < n; i++){	
   		for (k = 0; k < i; k++){
   			if ((3分)) {	
			    ;          
           	            break;
       	                 }
		}
		if (){
			break;
   		}
  	}

  	if (found != 0){
  		printf("Yes\n");
  	}  
  	else{
  		printf("No\n");
  	}  

	return 0;
}

 思路:借助判断行列式的倒置是否相同,看后面有found!=0知道第二空填found=0,紧接着判断

7-1 冒泡法排序 (10 分)

输入1个正整数n(1<=n<=10),然后输入n个整数并存放在数组中,将这n个整数从大到小排序后输出,相邻数字间有一个空格,行末不得有多余空格。

输入格式:

输入第一行给出一个不超过10的正整数n。第二行给出n个整数,其间以空格分隔。

输出格式:

在一行中输出从大到小有序的数列,相邻数字间有一个空格,行末不得有多余空格。

输入样例:

4 
75 71 77 76

输出样例:

77 76 75 71
代码:
#include<stdio.h>
void buttle(int a[],int n);
int main(void)
{
  int n,i,a[10];
  scanf("%d",&n);
  scanf("%d",&a[0]);
  for(i=1;i<n;i++)
  {
    scanf(" %d",&a[i]);
  }
  buttle(a,n);
  printf("%d",a[0]);
  for(i=1;i<n;i++)
 {
    printf(" %d",a[i]);
   }
  return 0;
}
void buttle(int a[],int n)
{
  int i,j,t;
  for(i=1;i<n;i++)
    for(j=0;j<n-i;j++)
    {
      if(a[j]<a[j+1]){
      t=a[j+1];
      a[j+1]=a[j];
      a[j]=t;
      }
    }
}

思路:

 

 

 

正确截图:

 


错误截图:

错误原因:忘记输入a[0]

 学习进度条:

 

 

 

 

 

posted @ 2019-03-22 13:13  4am_Godv  阅读(256)  评论(1编辑  收藏  举报