这个作业属于哪个课程 C语言程序设计2
这个作业要求在哪里 \https://edu.cnblogs.com/campus/zswxy/software-engineering-class2-2018/homework/2774
我的课程目标 运用两种排序法解决数组问题
这个作业在哪个具体方面帮助我实现目标 要求用排序法解题
参考文献 \https://www.cnblogs.com/Good-good-stady-day-day-up/p/9055698.html

一、2019春第四周作业(基础题)

题目1:选择法排序 (20 分)

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

输入格式:

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

输出格式:

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

输入样例:

4
5 1 7 6

输出样例:

7 6 5 1

1)实验流程

2)实验代码

#include<stdio.h>
int main()
{int i,x,k,n,t;int a[10]; scanf("%d",&n);for(i=0;i<n;i++)      /*将输入的元素一次赋给a的n个元素*/ {scanf("%d",&a[i]);}/*对n个数进行排序*/ for(k=0;k<n-1;k++){x=k;               /*x 存放最小值所在的下标*/ for(i=k+1;i<n;i++) /*寻找最小值所在下标*/ {if(a[i]>a[x])x=i;}t=a[x];             /*最小元素与下标为k的元素交换*/ a[x]=a[k];a[k]=t;}for(i=0;i<n;i++){printf("%d",a[i]);if(i!=n-1)           /*应题目要求输入空格数量*/ printf(" ");}printf("\n");return 0;
}

3)本体调试过程中遇到的问题及解决方法

问题一:违反题目要求,多出了空格

问题一的解决办法:

增加一个条件if(i!=n-1)printf(" ");

4)运行结果截图

题目2:7-1 找鞍点 (20 分)

一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。

本题要求编写程序,求一个给定的n阶方阵的鞍点。

输入格式:

输入第一行给出一个正整数n(1≤n≤6)。随后n行,每行给出n个整数,其间以空格分隔。

输出格式:

输出在一行中按照“行下标 列下标”(下标从0开始)的格式输出鞍点的位置。如果鞍点不存在,则输出“NONE”。题目保证给出的矩阵至多存在一个鞍点。

输入样例1:

4
1 7 4 1
4 8 3 6
1 6 1 2
0 7 8 9

输出样例1:

2 1

输入样例2:

2
1 7
4 1

输出样例2:

NONE

1)实验流程

2)实验代码

#include <stdio.h>
int main()
{  int a[6][6],n;  scanf("%d",&n);  int i,j;  for(i=0; i<n; i++)  for(j=0; j<n; j++)  {  scanf("%d",&a[i][j]);  }  int k=0,y=0,flag=1,p=0;  if(n==1)  printf("0 0");else  {  for(i=0; i<n; i++)  {  y=i;  for(p=0; p<n; p++){  if(a[i][k]<=a[i][p]) {  k=p;  }  }  for(j=0; j<n; j++){  if(a[y][k]>a[j][k]) {  y=j;  break;  }  }  if(i==y){  flag=0;  break;  }  }  if(flag==0)  printf("%d %d",i,k);  else printf("NONE");  }  return 0;
}  

3)本体调试过程中遇到的问题及解决方法

问题一:

问题一的解决办法:

4)运行结果截图

二、2019春第四周作业(挑战题)

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

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

输入格式:

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

输出格式:

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

输入样例:

4
75 71 77 76

输出样例:

77 76 75 71

1)实验流程

2)实验代码

#include<stdio.h>
void bubble(int a[],int n);  /*定义一个bubble()函数,实现数组的排序*/
int main()
{int a[8],n;int i;scanf("%d",&n);for(i=0;i<n;i++){scanf("%d",&a[i]);      /*将输入的元素一次赋给a的n个元素*/ }bubble(a,n);              /*a是等待排序的整型数组名,n指名数组a待处理的数组元素的数量*/ for(i=0;i<n;i++){printf("%d",a[i]);if(i!=n-1)            /*应题目要求输入空格数量*/ printf(" ");}return 0;
}/*对数组a中数字进行排序*/
void bubble(int a[],int n)      /*n是数组a中待排序元素的数量*/
{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];a[j]=a[j+1];a[j+1]=t;}}}
}

3)本体调试过程中遇到的问题及解决方法

问题一:违反题目要求,多出了空格

问题一的解决办法:

增加一个条件if(i!=n-1)printf(" ");

4)运行结果截图

三、学习进度条

周/日期 这周所发时间 代码行 学到的知识点简介 目前比较迷惑的问题
3/18~3/22 7 时 121 学到了怎么写选择排序及冒泡排序 找出鞍点的判断条件是?

四、学习感悟

本次作业的基础题中(选择排序演示视频)比较简单,毕竟老师有讲过。但是第二题找鞍点,太难了,我知道条件,但是不知道怎么用代码表现出来。挑战题也比较简单,至少比找鞍点好写。(冒泡排序演示视频)

转载于:https://www.cnblogs.com/xw1203/p/10573509.html

2019春第四周作业软件相关推荐

  1. 2019春第九周作业

    这个作业属于哪个课程 C语言程序设计II 这个作业要求在哪里 2019年春季学期第九周作业 我在这个课程的目标是 我希望能够通过学习C语言的知识,编写程序 这个作业在哪个具体方面帮助我实现目标 这个作 ...

  2. 2019春第一周作业(计算机)7.1

    7-1 查找整数 (10 分) 本题要求从输入的N个整数中查找给定的X.如果找到,输出X的位置(从0开始数):如果没有找到,输出"Not Found". 输入格式: 输入在第一行中 ...

  3. 【华为校园招聘】2019春实习模拟试卷 软件题demo

  4. 2019年春季学期第四周作业Compile Summarize

    这个作业属于哪个课程 C语言程序设计一 这个作业要求在哪里 2019春季学期第四周作业 我的课程目标 重新学习有关数组的问题 这个作业在哪个具体方面帮助我实现目标 对于置换有了新的见解 参考文献 中国 ...

  5. 2019年春季学期第四周作业

    这个作业属于哪个课程 C语言程序设计 这个作业的要求在哪里 2019年春季学期第四周作业 我在这个课程的目标是 了解选择排序法和冒泡排序法的区别,熟练运用二分法查找法 这个作业在哪个具体方面帮助我实现 ...

  6. 2019春季学期第四周作业

    2019春季学期第四周作业 这个作业属于那个课程 C语言程序设计Ⅰ 这次作业要求在哪里 2019春季学期第四周作业 我在这个课程的目标是 我希望能够更加掌握循环和排序 参考文献 无 选择法排序 本题要 ...

  7. 2019春第六周作业

    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 2019春第六周作业 我在这个课程的目标是 掌握指针变量的基本运算:理解指针作为函数参数的作用:掌握如何使用指针实现函数调用返回多个值. ...

  8. 学号20189220 2018-2019-2 《密码与安全新技术专题》第四周作业

    学号20189220 2018-2019-2 <密码与安全新技术专题>第四周作业 课程:<密码与安全新技术专题> 班级: 1892 姓名: 余超 学号:20189220 上课教 ...

  9. 20189221 2018-2019-2 《密码与安全新技术专题》第四周作业

    20189221 2018-2019-2 <密码与安全新技术专题>第四周作业 课程:<密码与安全新技术专题> 班级: 201892 姓名: 郭开世 学号:20189221 上课 ...

最新文章

  1. Java Web 分页实现
  2. js正则表达式详细教程
  3. ubuntu网站收集
  4. Android应用开发提高篇(4)-----Socket编程(多线程、双向通信)
  5. linux SVN web 同步
  6. Web前端-课程设计-网易严选
  7. android文件读取文件内容,android创建txt文件,读取txt文件内容
  8. 国外服务器直播网站,海外直播服务器搭建
  9. 江苏开票系统安全接入服务器地址,江苏省增值税发票查询平台网址.doc
  10. CCF中学生计算机程序设计入门篇练习2.4.2(NOI 1002 三角形) pascal
  11. PS3主机数据完全一览及关键词解释
  12. 浏览器有网微信没网络连接服务器,电脑可以登陆微信但是浏览器无法联网是怎么回事儿...
  13. 如何使用Pixelmator Pro处理图片?mac pixelmator使用教程
  14. 十几岁的娃娃,下手咋这么狠
  15. Dilworth定理的简单应用(导弹拦截题解)
  16. HDU 4069 Squiggly Sudoku(DLX)(The 36th ACM/ICPC Asia Regional Fuzhou Site —— Online Contest)...
  17. linux 用户和组详解
  18. Java的主要应用领域有哪些?
  19. c语言数学语文英语成绩编程,输入10名学生的序号和每个学生三门功课(数学、英语、C语言程序设计)的成绩,编程计算出每个学生的总分...
  20. 计算机原理---什么叫协议?主流协议族TCP/IP协议与HTTP协议的联系及区别

热门文章

  1. nginx 获取真实ip
  2. oracle 用函数返回对象集合
  3. windows API 实现截图
  4. 数学图形(1.5)克莱线
  5. 如果我要....(生活版)
  6. reciprocity
  7. 订体育馆订健身房的方法
  8. 山东大学和哈工大的教师招聘条件对比,心里要有点数
  9. UGUI的text赋值问题-速度
  10. 计算机领域的顶级会议和期刊