2019春第四周作业软件
这个作业属于哪个课程 | 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春第四周作业软件相关推荐
- 2019春第九周作业
这个作业属于哪个课程 C语言程序设计II 这个作业要求在哪里 2019年春季学期第九周作业 我在这个课程的目标是 我希望能够通过学习C语言的知识,编写程序 这个作业在哪个具体方面帮助我实现目标 这个作 ...
- 2019春第一周作业(计算机)7.1
7-1 查找整数 (10 分) 本题要求从输入的N个整数中查找给定的X.如果找到,输出X的位置(从0开始数):如果没有找到,输出"Not Found". 输入格式: 输入在第一行中 ...
- 【华为校园招聘】2019春实习模拟试卷 软件题demo
- 2019年春季学期第四周作业Compile Summarize
这个作业属于哪个课程 C语言程序设计一 这个作业要求在哪里 2019春季学期第四周作业 我的课程目标 重新学习有关数组的问题 这个作业在哪个具体方面帮助我实现目标 对于置换有了新的见解 参考文献 中国 ...
- 2019年春季学期第四周作业
这个作业属于哪个课程 C语言程序设计 这个作业的要求在哪里 2019年春季学期第四周作业 我在这个课程的目标是 了解选择排序法和冒泡排序法的区别,熟练运用二分法查找法 这个作业在哪个具体方面帮助我实现 ...
- 2019春季学期第四周作业
2019春季学期第四周作业 这个作业属于那个课程 C语言程序设计Ⅰ 这次作业要求在哪里 2019春季学期第四周作业 我在这个课程的目标是 我希望能够更加掌握循环和排序 参考文献 无 选择法排序 本题要 ...
- 2019春第六周作业
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 2019春第六周作业 我在这个课程的目标是 掌握指针变量的基本运算:理解指针作为函数参数的作用:掌握如何使用指针实现函数调用返回多个值. ...
- 学号20189220 2018-2019-2 《密码与安全新技术专题》第四周作业
学号20189220 2018-2019-2 <密码与安全新技术专题>第四周作业 课程:<密码与安全新技术专题> 班级: 1892 姓名: 余超 学号:20189220 上课教 ...
- 20189221 2018-2019-2 《密码与安全新技术专题》第四周作业
20189221 2018-2019-2 <密码与安全新技术专题>第四周作业 课程:<密码与安全新技术专题> 班级: 201892 姓名: 郭开世 学号:20189221 上课 ...
最新文章
- Java Web 分页实现
- js正则表达式详细教程
- ubuntu网站收集
- Android应用开发提高篇(4)-----Socket编程(多线程、双向通信)
- linux SVN web 同步
- Web前端-课程设计-网易严选
- android文件读取文件内容,android创建txt文件,读取txt文件内容
- 国外服务器直播网站,海外直播服务器搭建
- 江苏开票系统安全接入服务器地址,江苏省增值税发票查询平台网址.doc
- CCF中学生计算机程序设计入门篇练习2.4.2(NOI 1002 三角形) pascal
- PS3主机数据完全一览及关键词解释
- 浏览器有网微信没网络连接服务器,电脑可以登陆微信但是浏览器无法联网是怎么回事儿...
- 如何使用Pixelmator Pro处理图片?mac pixelmator使用教程
- 十几岁的娃娃,下手咋这么狠
- Dilworth定理的简单应用(导弹拦截题解)
- HDU 4069 Squiggly Sudoku(DLX)(The 36th ACM/ICPC Asia Regional Fuzhou Site —— Online Contest)...
- linux 用户和组详解
- Java的主要应用领域有哪些?
- c语言数学语文英语成绩编程,输入10名学生的序号和每个学生三门功课(数学、英语、C语言程序设计)的成绩,编程计算出每个学生的总分...
- 计算机原理---什么叫协议?主流协议族TCP/IP协议与HTTP协议的联系及区别