zoukankan      html  css  js  c++  java
  • 第14、15教学周作业

    1. PTA习题编程过程

    一.7-4 交换最小值和最大值

    1. 实验代码

    #include<stdio.h>
    int main () {
    	int i,a[10]={0},n,t,min,max,m;
        scanf("%d",&n);
        for(i=0;i<n;i=i+1){
        	scanf("%d",&a[i]);
    	}
    	int x=a[0];
        for(i=0;i<n;i=i+1){
        	if(a[i]<x){
        		x=a[i];
        		min=i;	
    		}
    		else{
    			x=x;
    			min=min;
    		}
    	}
    	if(x!=a[0]){
        t=a[0];
        a[0]=a[min];
        a[min]=t;}
        int d=a[n-1];
        for(i=0;i<n;i=i+1){
        	if(a[i]>d){
        		d=a[i];
        		max=i;
    		}	
    		else{
    			d=d;
    			max=max;
    		}
    	}
    	if(d!=a[n-1]){
        m=a[n-1];
        a[n-1]=a[max];
        a[max]=m;}
        for(i=0;i<n;i=i+1){
        	printf("%d ",a[i]);
    	}
        
    	return 0;
    }
    

    2. 设计思路

    • 第一步 先通读题目了解要打的代码的意思,思考计算方法。
    • 第二步 因为是仅交换最大值和最小值的位置,所以冒泡排序pass,选择选择排序。
    • 第三步 因为需要保证交换前与交换后之间的数字保持不变,所以使用两次选择排序,保证最大值与最小值的位置正确。
    • 第四步 输出运算结果。

    3. 流程图

    4. 本题调试过程碰到问题及解决办法

    问题:一开始理解错题意,使用了冒泡循环,导致结果错误。

    问题截图:

    • 解决方法:询问同学,理解题意以后,改用选择循环,至答案正确。

    5.提交列表

    二. 7-1 数组中偶数的和

    1. 实验代码

    #include <stdio.h>
    int main (){
      int a[10];
      int i=0,sum=0;
      scanf("%d",&a[0]);
      if(a[0]%2==0){
      	sum=a[0];
      }
      for(i=1;i<=9;i++){
      	scanf("%d",&a[i]);
      	if(a[i]%2==0){
      		sum=sum+a[i];
    	  }
      }
     printf("s=%d",sum);
     return 0;
    
    }
    

    2. 设计思路

    • 第一步 先通读题目了解要打的代码的意思,思考计算方法。
    • 第二步 使用循环语句,判断是否为偶数,累加。
    • 第四步 输出sum的值。

    3. 流程图

    4. 本题调试过程碰到问题及解决办法

    问题:没有初始化,导致答案错误。

    问题截图:

    • 解决方法:使用调试功能,逐步进行,发现错误,改正,使其初始化。

    5.提交列表

    要求四

    上传成功后coding.net项目的截图:

    地址:https://git.coding.net/singal/test.git

    要求五

    个人总结

    (1)本周你学习了哪些内容?收获了什么?

    • 本周学习了数组,冒泡循环,选择循环,如何初始化数组,如何定义数组长度,数组的使用方法,二维数组与一维数组。
    • 收获了使用数组的方法,明白了使用数组的便捷。
      (2)本周所学内容中你觉得哪些是难点?有哪些知识点还不明白?
    • 我认为冒泡循环和选择循环的本阶段的难点。
    • 目前并无知识点不明白。

    要求六

    互评和学习进度
    1、三个同学的博客地址:
    刘泽华: http://www.cnblogs.com/liuzehua123/p/7905557.html
    汪志恒: http://www.cnblogs.com/wangzhiheng/p/7967143.html
    马天琦: http://www.cnblogs.com/simalang/p/7965750.html

    2、请用表格和折线图呈现你本周(11/9 13:00~11/19 8:00)的代码行数和时间、博客字数和时间、涉及的知识点

  • 相关阅读:
    百度之星资格赛1001——找规律——大搬家
    HDU1025——LIS——Constructing Roads In JGShining's Kingdom
    DP(递归打印路径) UVA 662 Fast Food
    递推DP UVA 607 Scheduling Lectures
    递推DP UVA 590 Always on the run
    递推DP UVA 473 Raucous Rockers
    博弈 HDOJ 4371 Alice and Bob
    DFS(深度) hihoCoder挑战赛14 B 赛车
    Codeforces Round #318 [RussianCodeCup Thanks-Round] (Div. 2)
    DP(DAG) UVA 437 The Tower of Babylon
  • 原文地址:https://www.cnblogs.com/100200a/p/7966860.html
Copyright © 2011-2022 走看看