第14、15教学周作业

题目 交换最小值和最大值
1.实验代码

#include<stdio.h>
#define N 10    
int main()
{
 int a[N];
 int i,n,max,min,j,m1,m2,c1,c2,k;
 scanf("%d",&n);
 for(i=0;i<n;i++)
 {scanf("%d",&a[i]);
  if(i==0)
  {max=a[i];
  m1=0;}
  if(a[i]>max)
{ max=a[i];
  m1=i;
}}
 c1=max;
 a[m1]=a[n-1];
 a[n-1]=max;
 for(k=0;k<n;k++)
 {
  if(k==0)
  {min=a[k];
  m2=0;}
  if(a[k]<min)
{ min=a[k];
  m2=k;
}}  
c2=min;
a[m2]=a[0];
a[0]=c2;
  
 for(j=0;j<n;j++)
 {
 	printf("%d ",a[j]);
 }

 return 0;
}

2 设计思路
(1)主要描述题目算法
第一步:用循环语句找出最大值
第二步:设立第三值使最大值和目标交换
第三步:在排好序的数字序列中找到最小值
第四步:重复1,2步
第五步:输出排好的序列
(2)流程图

3.本题调试过程碰到问题及解决办法
一开始直接找出最大最小值,发现会产生交换已交换的数。经过思考修改思路,解决问题。

题目 数组元素循环右移问题
1.实验代码

#include <stdio.h>
int main()
{
	const int N=100;
    int k,c=0,i=0,n,m,j,b=0,y;
    int a[N];
    scanf("%d %d",&n,&m);
    y=m%n;
    for(i=0;i<n;i++)
    {
    	scanf("%d",&a[i]);
	}
	 for(j=0;j<n;j++) 
	{  if(j+y+1>n)
      {
	  printf("%d",a[j]);
	  c++;
	  if(c<n)
	  {printf(" ");
	  }
    }
	}   
	for(k=0;k<n-y;k++)
	{printf("%d",a[k]);;
	if(k<n-y-1)
	{printf(" ");
	}
		  }  
	
    return 0;
}

2 设计思路
(1)主要描述题目算法
第一步:定义数组,并根据输入的n值给数组赋值。
第二步:通过改变数字的输出顺序做到向右移动。
(2)流程图

3.本题调试过程碰到问题及解决办法
一开始尝试过交换数组中各个数字的位置,无果。后更改思路,解决问题。

题目 冒泡法排序
1.实验代码

#include <stdio.h>
#define N 100
int main()
{
  int a[N];
  int i,j,n,c,k,l,b;
  scanf("%d %d",&n,&k);
  for(i=0;i<n;i++)
  {
  	scanf("%d",&a[i]);
  }
  for(l=0;l<k;l++)
  {
  for(j=0;j<n-1-l;j++)
  {
  	if(a[j]>a[j+1])
  	{
  		c=a[j];
  		a[j]=a[j+1];
  		a[j+1]=c; 
	  }
  }
}
  for(b=0;b<n;b++)
  {printf("%d",a[b]);
   if(b<n-1)
   {printf(" ");
   }
  }
 

2 设计思路
(1)主要描述题目算法
第一步:定义数组。
第二步:初始化数组。
第三步:冒泡排序。
第四步:依次输出。
(2)流程图

3.本题调试过程碰到问题及解决办法
解题过程遗忘循环条件,列出本题,希望自己多牢记。

git地址
https://git.coding.net/Donahue_Xu/14-and-15-Homework.git
截图

本周学习内容
(1)本周你学习了哪些内容?收获了什么?
一维数组,二维数组的定义及其使用时的注意事项。数组的运用方法(冒泡排序法,选择排序法等)。
(2)本周所学内容中你觉得哪些是难点?有哪些知识点还不明白?
实际运用中缺少方法,难题中缺少解题思路,无法很好运用。

点评同学
刘炜旗:http://www.cnblogs.com/ryo-/p/7927967.html
赵寅胜:http://www.cnblogs.com/2017023960ZYS/p/7966581.html
史泽文:http://www.cnblogs.com/shilcz/p/7967522.html

点评截图
1.

2.

3.

表格

折线图

posted on 2017-12-03 22:42  徐铭博  阅读(152)  评论(1编辑  收藏  举报

导航