第四次作业

2023-11-08

 

作业要求:https://edu.cnblogs.com/campus/hljkj/CS201801/homework/2523

预习

1、数组视频全看了

2、学到了一维数组和二维数组,如何定义使用数组

3、数组的排序,不能熟练使用二维数组,只能初步定义

 

 

 

 

 

 

 

 

 

第一题:

7-2 输出所有大于平均值的数

作业要求:

本题要求编写程序,将输入的n个整数存入数组a中,然后计算这些数的平均值,再输出所有大于平均值的数。

代码:

 1 #include<stdio.h>
 2 int main(){
 3     int n,sum=0;
 4     int i,judge=0;
 5     double average=0;
 6     scanf("%d",&n);
 7     if(n>=1&&n<=10){
 8         int a[n];
 9         for(i=0;i<n;i++){
10             scanf("%d",&a[i]);
11             sum=sum+a[i];
12         }
13         average=1.0*sum/n;
14         printf("%.2f\n",average);
15         for(i=0;i<n;i++){
16             if(a[i]>average){
17                 printf("%d ",a[i]);
18             }
19         }
20         for(i=0;i<n;i++){
21             if(a[i]!=average)
22           judge=1;
23         }
24         if(judge==0){
25           printf("\n");
26           
27         }
28     }
29     else{
30         printf("Invalid.");    
31     }
32     return 0;
33 }

 

思路:

第一:定义变量,输入n;

第二:根据题目要求,n若不在1n10内,则输出Invalid.;

第三:n若在1n10内,则执行循环输入a[i],sum+=a[i];

第四:求平均数average=1.0*sum/n;

第五:循环判断a[i]是否大于average,若大于则输出a[i];

第六:定义变量judge=1,假设数组中有数等于average;

第七:循环判断a[i]是否不等于average,若是则令judge=0;

第八:如果judge=0,则输出空行;

结束

流程图:

 

 

 运行过程:

 

 

 

 

 做得很轻松一遍过

 

 

 调试一下

 

 运行成功

 

第二题:

7-3 交换最小值和最大值 

作业要求:

本题要求编写程序,先将输入的一系列整数中的最小值与第一个数交换,然后将最大值与最后一个数交换,最后输出交换后的序列。注意:题目保证最大和最小值都是唯一的。

代码:

 1 #include<stdio.h>
 2 int main(){
 3     int n,i;
 4     scanf("%d\n",&n);
 5     int a[n];
 6     for(i=0;i<n;i++){
 7         scanf("%d",&a[i]);
 8     }
 9     if(n==2){
10         if(a[0]>a[1])
11         printf("%d %d ",a[1],a[0]);
12         else
13         printf("%d %d ",a[0],a[1]);
14     }
15     else{
16         int max=a[0],index1=0;
17         int min=a[0],index2=0;    
18         for(i=0;i<n;i++){
19             if(max<a[i]){
20                 max=a[i];
21                 index1=i;
22             }                            
23         }
24         a[index1]=a[n-1];
25         a[n-1]=max;
26         for(i=0;i<n;i++){
27             if(min>a[i]){
28                 min=a[i];
29                 index2=i;    
30             }                            
31         }
32         a[index2]=a[0];
33         a[0]=min;
34         for(i=0;i<n;i++){
35             printf("%d ",a[i]);        
36         }
37     }
38 
39     return 0;
40 }

思路:

第一:定义变量,输入n;

第二:循环输入a[i];

第三:如果n=2,进入条件语句(第四,第五);

第四:如果a[0]>a[1],输出a[1],a[0];

第五:如果a[0]<=a[1],输出a[0],a[1];

第六:如果n!=2,定义变量max=min=a[0],index1=index2=0;

第七:i从0到n-1如果max<a[i]则max=a[i],index1=i;

第八:a[index1]=a[n-1],a[n-1]=max;

第九:i从0到n-1如果min>a[i]则min=a[i],index2=i;

第十:a[index2]=a[n-1],a[n-1]=min;

最后:循环输出数组a

 

流程图:

 

 

 

 

运行过程:

 

 写pta出现的问题

 

 首次调试

 

 

 

 在这是对的,注意下一波

 

 

 

 

 a[3]出现失误

 

 

 

 

 

 

 

 

 

 想了很久,发现是我的for循环值会覆盖,于是我把for循环拆成两个

 

 

 

 

 

 

 

 

 

 调试一下新代码,perfect

 

 

 

总结:

  学习了简单的数组运用,选择排序,冒泡排序,还看了指针的一些内容。

  学习了数组以后,发现了解数组简单,但是在运用这方面就有点落后了,编程的代码不能如自己所想的那样,最后结果不如我所愿。我是这么去解决的,遇到了就先改,改到自己认为的极限以后,再去考虑补,打补丁来解决问题。在下一段的学习中,我会先进行简单的运算,类似于与计算机进行交流,思考好了如何编程,再去码,不想当然的去码代码。

点评:

 https://www.cnblogs.com/wangxiangbo/p/10165493.html

https://www.cnblogs.com/chengxu230921/p/10170865.html

https://www.cnblogs.com/1a2B3c4D/p/10160490.html

 

 

 

 

 

累积代码行数和时间:

 

累积博客字数和时间:

 

转载于:https://www.cnblogs.com/159357www/p/10165685.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

第四次作业 的相关文章

随机推荐

  • python字典和集合属于无序序列吗_python-序列、集合及字典

    组合数据类型 1 集合类型 集合是多种元素的无序组合 元素独一性 集合用大括号 表示 元素用 分隔 用set函数建立 A set python123 p y t h o n 1 2 3 集合操作符 集合有四种基础运算方法 并 交 差 补 S
  • 关于pads生产文件的导出

    1 solder mask solder mask 是阻焊层出的是负片 它的设置一般如图所示 这个是一般常规设置 如果器件焊盘已经专门做了阻焊焊盘 则可以按如图所示设置 如果选择top层焊盘 设备设置可以选择缩放为4 如果选择solder
  • EVE-NG网卡桥接,带您走进更高级的实验

    原帖地址 http www mamicode com info detail 1819599 html 一 给EVE NG添加虚拟的物理网卡 不管什么样的网卡 方法都类似 为什么说是虚拟的物理网卡呢 这个VMnet1网卡本身就是虚拟出来的
  • 一篇文章让你了解大数据挖掘技术

    大数据如果想要产生价值 对它的处理过程无疑是非常重要的 其中大数据分析和大数据挖掘就是最重要的两部分 在前几期的科普中 小编已经为大家介绍了大数据分析的相关情况 本期小编就为大家讲解大数据挖掘技术 让大家轻轻松松弄懂什么是大数据挖掘技术 什
  • 01 Datafountain_云状识别_top1

    01 Datafountain 云状识别 top1 摘要 1 云状识别算法总体思路和架构 2 云状识别算法具体实现过程 2 1 图像增强 2 2 多图像尺寸训练 2 3 选用densenet161预训练模型进行fine tune 2 4 差
  • Kotlin-Retrofit2和Rxjava2的网络封装,展示Github的用户信息

    目录 开始 1 先添加依赖 2 封装请求类 3 RESTful API请求响应的处理 4 线程与生命周期 5 使用 效果如下 开始 1 先添加依赖 Retrofit相关 implementation com squareup okhttp3
  • git did not exit cleanly (exit code 128) 的解决办法

    问题描述 在新建一个空的本地git仓库后 打算将远程仓库中的代码Pull到本地时异常 具体异常内容如下 git exe pull progress v no rebase origin masterPOST git upload pack
  • CRC-16校验原理

    1 循环校验码 CRC码 是数据通信领域中最常用的一种差错校验码 其特征是信息字段和校验字段的长度可以任意选定 2 生成CRC码的基本原理 任意一个由二进制位串组成的代码都可以和一个系数仅为 0 和 1 取值的多项式一一对应 例如 代码10
  • 【LeetCode】349. 两个数组的交集

    题目 给定两个数组 编写一个函数来计算它们的交集 示例 1 输入 nums1 1 2 2 1 nums2 2 2 输出 2 示例 2 输入 nums1 4 9 5 nums2 9 4 9 8 4 输出 9 4 说明 输出结果中的每个元素一定
  • Go语言面试题--基础语法(14)

    文章目录 1 切片 a b c 的长度和容量分别是多少 2 下面代码中 A B 两处应该怎么修改才能顺利编译 3 下面代码输出什么 1 切片 a b c 的长度和容量分别是多少 func main s 3 int 1 2 3 a s 0 b
  • 【科普向】谁都能看懂的CRC(循环冗余校验)原理

    CRC原理 简介 CRC基本原理 模二运算 二进制系数多项式 CRC算法 示例 CRC算法的数学描述 常用CRC版本 CRC算法的编程实现 简介 循环冗余校验 Cyclic Redundancy Check CRC 是一种根据网络数据包或计
  • MySQL - MySQL 8.0(二)基本操作:用户

    文章目录 前言 查看当前登录用户 一 创建用户 1 语法介绍 2 创建 dbadmin 用户 仅做了解 二 授予和撤销用户的访问权限 1 授予权限 2 检查授权 3 撤销权限 题外话 修改 mysql user 表 三 修改密码 身份验证插
  • 浅显易懂的GCC使用教程——初级篇

    浅显易懂的GCC使用教程 初级篇 2018 12 17天气暖 属于冬日里出太阳 最近在学习使用gvim 想着抛弃对IDE的依赖同时也是想了解编译的过程 但除了学习gvim繁多的指令外还得先学习使用gcc编译程序 这篇文章将会用浅显易懂的方式
  • [IDEA] 异常 Configuration is still incorrect. Do you want to edit it again? Error: module not specifie

    在Idea打开项目出现 Configuration is still incorrect Do you want to edit it again 的错误提示 点Edit 出现 Error module not specifie 问题 产生
  • el-input使用clearable,:title,MessageBox弹框外部关闭,el-Dropdown 下拉菜单详细举例,el-table的show-overflow-tooltip是什么?

    近期在工作中改测试提出的一些bug 有时候同样一个bug却忘了上一次怎么改的 特此总结分享 1 关于el input使用clearable属性即可得到一个可清空的输入框 2 由于clearable属性引发的一个小bug 如例图 蓝色部分后面
  • OpenCV:判断读取图片是否成功

    摘要 当用imread 读取图片时 如果图片路径错了 或者图片名称 又或者后缀格式错误 程序都会报错 基于这个问题 有时候我们不知道是读取图片失败而报错 会误以为是其它行代码出错了 所以 经常读取图片后 会进行判断图片是否读取成功 如果读出
  • iOS-对于把图片渲染成蓝色的修改方法

    在之前开发的过程中 遇到过这样一个小问题 给button设置一张图片 图片是灰色 美工做的图肯定没有问题 给button设置图片的方法也很简单 一句代码搞定 但是运行的时候却发现 图片无缘无故变成了蓝色 后来自己研究了一下发现 在给一些控件
  • cuDNN下载

    cuDNN下载网址 https developer nvidia com rdp cudnn download 按顺序点击可以看到与cuda相对应版本 点击对应cuda版本的cuDNN下载 例如CUDA11 4对应的版本
  • C语言入门初识(中)

    C语言入门初识 中 常量 常量的分类 1 字面常量 2 const修饰的常变量 3 define 定义的标识符常量 4 枚举常量 字符串 转义字符 注释 字符串 C常用格式转换说明符 转义字符 注释 选择语句与循环语句 选择语句 循环语句
  • 第四次作业

    作业要求 https edu cnblogs com campus hljkj CS201801 homework 2523 预习 1 数组视频全看了 2 学到了一维数组和二维数组 如何定义使用数组 3 数组的排序 不能熟练使用二维数组 只