当前位置: 首页 > news >正文

C语言假期作业 DAY 03

目录

题目

一、选择题

1、已知函数的原型是: int fun(char b[10], int *a); ,设定义: char c[10];int d; ,正确的调用语句是( )

2、请问下列表达式哪些会被编译器禁止【多选】( )

3、以下程序的输出结果为( )

4、下面代码段的输出是( )

5、下列不能实现死循环的是( )

二、编程题

 1:记负均正_牛客题霸_牛客网 (nowcoder.com)HJ97 记负均正

描述

输入描述:

输出描述:

2:旋转数组的最小数字_牛客题霸_牛客网JZ11 旋转数组的最小数字

描述

示例1

示例2

题解

一、选择题

1 、【答案解析】

2 、【答案解析】

3 、【答案解析】

4 、【答案解析】

5 、【答案解析】

二、编程题

1 、【答案解析】:

2、【答案解析】


题目

一、选择题

1、已知函数的原型是: int fun(char b[10], int *a); ,设定义: char c[10];int d; ,正确的调用语句是( )

A: fun(c,&d) ;
B: fun(c,d) ;
C: fun(&c,&d) ;
D: fun(&c,d) ;

2、请问下列表达式哪些会被编译器禁止【多选】( )

int a = 248, b = 4;
int const* c = 21;
const int* d = &a;
int* const e = &b;
int const* const f = &a;

A: *c = 32 ;

B: *d = 43

C: e=&a

D: f=0x321f

3、以下程序的输出结果为( )

 

#include <stdio.h>
int i;
void prt()
{
for (i = 5; i < 8; i++)
printf("%c", '*');
printf("\t");
} in
t main()
{
for (i = 5; i <= 8; i++)
prt();
return 0;
}

4、下面代码段的输出是( )

int main()
{int a=3;printf("%d\n",(a+=a-=a*a));return 0;
}

A: -6

B: 12

C: 0

D: -12

5、下列不能实现死循环的是( )

A: while(1){}
B: for( ; 1 ; ){}
C: do{}while(1) ;
D: for( ; 0 ; ){}
 

二、编程题

 1:记负均正_牛客题霸_牛客网 (nowcoder.com)HJ97 记负均正

描述

首先输入要输入的整数个数n,然后输入n个整数。输出为n个整数中负数的个数,和所有正整数的平均值,结果保留一位小数。

0即不是正整数,也不是负数,不计入计算。如果没有正数,则平均值为0。

数据范围:  1≤n ≤2000  ,输入的整数都满足  ∣val∣≤1000 

输入描述:

首先输入一个正整数n,
然后输入n个整数。

输出描述:

输出负数的个数,和所有正整数的平均值。

2:旋转数组的最小数字_牛客题霸_牛客网JZ11 旋转数组的最小数字

描述

有一个长度为 n 的非降序数组,比如[1,2,3,4,5],将它进行旋转,即把一个数组最开始的若干个元素搬到数组的末尾,变成一个旋转数组,比如变成了[3,4,5,1,2],或者[4,5,1,2,3]这样的。请问,给定这样一个旋转数组,求数组中的最小值。

数据范围:1≤n≤10000,数组中任意元素的值: 0≤val≤10000

要求:空间复杂度:O(1) ,时间复杂度:O(logn)

示例1

输入:[3,4,5,1,2]

返回值:1

示例2

输入:[3,100,200,3]

返回值:3 

题解

一、选择题

1 、【答案解析】

正确答案: A
参数 a 是指针,要接收地址, BD 错误。参数 b 可以接收的是 char* ,而 &c 的类型是 char(*)[10] , C 错误

2 、【答案解析】

正确答案: ABCD
如果 const 位于 * 的左侧,则 const 就是用来修饰指针所指向的变量,即指针指向为常量; *c 和 *d 不能变。 如果 const 位于 * 的右侧,则 const 就是修饰指针本身,即指针本身是常量; e 和 f 不能变。

3 、【答案解析】

正确答案: A
全局变量 i ,在 main() 中修改为 5 ,第一次在 prt() 中执行循环输出三次 '*' , i 被修改为 8 ,回到 main() 中第二次调用 prt() 时,i<8 为假,循环结束没输出,执行一次 print("\t") ,再次回到主函数后 i++ 变为 9 , i<=8 为假,循环结束 ;

4 、【答案解析】

正确答案: D
a+=a-=a*a 等价于 a=a+(a=a-a*a) ,即先计算 a=a-a*a ,所以此时 a 的值为 3-3*3=-6 ,再计算 -6+(-6)=-12 赋值给 a ,所以a 的值为 -12 ,也就是整个表达式的值,所以应选择 D

5 、【答案解析】

正确答案: D
只有条件为真时才进行循环, ABC 中 1 为真, D 中 0 为假

二、编程题

1 、【答案解析】:

这道题其实通过 scanf 捕捉数据即可,统计负数个数,以及正数格式,并且在统计正数个数的过程中求取正数总和,最后计算得出平均数即可。需要注意的是所有数字中0 是不统计在内的。

#include<stdio.h>
#include<stdlib.h>
int main() {int n = 0;while (scanf("%d", &n) != EOF) {int i = 0;int sum = 0;float ava = 0.0f;int cnt1 = 0;//记录负数int cnt2 = 0;//记录除0后的数int cnt3 = 0;//记录0的个数int* arr = (int*)malloc(n * sizeof(int));for (i = 0; i < n; i++) {scanf("%d", &arr[i]);}for (i = 0; i < n; i++) {if (arr[i] < 0) {cnt1++;} else if (arr[i] > 0) {sum += arr[i];cnt2++;} else {cnt3++;}}if (cnt3 == n) {printf("%d 0.0", cnt1);} else {ava = (double)sum / cnt2;printf("%d %.1f", cnt1, ava);}free(arr);arr = NULL;}return 0;
}

2、【答案解析】

 暴力破解:遍历数组找出最小值即可 更优思想:采用二分查找,这个题主要分析三种旋转情况 [1, 2, 3, 4, 5],使用中间值与右端进行比较。

1. 中间大于右边 [3, 4, 5, 1, 2],这种情况下,最小数一定在右边;则left = middle + 1

2. 中间等于右边 [1, 0, 1, 1, 1], 这个是[0, 1, 1, 1, 1] 旋转过来的,这时候需要缩小范围 right--;,注意不能是 left++,因为是非降序数组,所以要缩小右边范围,把较小值向右推,符合我们的判断规则。

3. 中间小于右边 [5, 1, 2, 3, 4], 这种情况下,最小数字则在左半边;则right = middle
 

int minNumberInRotateArray(int* rotateArray, int rotateArrayLen)
{if (rotateArrayLen == 0) return 0;int left = 0, right = rotateArrayLen - 1, mid;if (rotateArray[right] > rotateArray[left]) return rotateArray[0];while (left < right) {mid = left + (right - left) / 2;if (rotateArray[mid] > rotateArray[right]) left = mid + 1;else if (rotateArray[mid] == rotateArray[right]) right--;else right = mid;}return rotateArray[left];
}

相关文章:

C语言假期作业 DAY 03

目录 题目 一、选择题 1、已知函数的原型是&#xff1a; int fun(char b[10], int *a); &#xff0c;设定义&#xff1a; char c[10];int d; &#xff0c;正确的调用语句是&#xff08; &#xff09; 2、请问下列表达式哪些会被编译器禁止【多选】&#xff08; &#xff09; 3、…...

使用serverless实现从oss下载文件并压缩

公司之前开发一个网盘系统, 可以上传文件, 打包压缩下载文件, 但是在处理大文件的时候, 服务器遇到了性能问题, 主要是这个项目是单机部署.......(离谱), 然后带宽只有100M, 现在用户比之前多很多, 然后所有人的压缩下载请求都给到这一台服务器了, 比如多个人下载的时候带宽问…...

从上到下打印二叉树

题目描述 从上到下打印出二叉树的每个节点&#xff0c;同一层的节点按照从左到右的顺序打印。 例如: 给定二叉树: [3,9,20,null,null,15,7], 返回&#xff1a; [3,9,20,15,7] 算法思想 建立一个vector数组ret用来当做返回的结果数组&#xff0c;建立一个队列用来接收二叉树…...

【推荐】排序模型的调优

【推荐】排序模型的调优 排序模型的选择 排序模型常见的训练方式 样本类别不均衡处理尝试 欠拟合 过拟合 其他问题 排序模型的选择 LR&#xff0c;GBDT&#xff0c;LRGBDT&#xff0c;FM/FFM&#xff0c; 深度模型&#xff08;wide & deep&#xff0c;DeepFM&#x…...

负载均衡安装配置详解

负载均衡&#xff08;Load Balancing&#xff09;是一种将网络流量分布到多个服务器上的技术&#xff0c;以提高系统的性能、可靠性和可扩展性。 在负载均衡中&#xff0c;有一个负载均衡器&#xff08;Load Balancer&#xff09;&#xff0c;它充当了传入请求的前置接收器。当…...

Java-逻辑控制

目录 一、顺序结构 二、分支结构 1.if语句 2.swich语句 三、循环结构 1.while循环 2.break 3.continue 4.for循环 5.do while循环 四、输入输出 1.输出到控制台 2.从键盘输入 一、顺序结构 按照代码的书写结构一行一行执行。 System.out.println("aaa"); …...

UE 透明渲染次序

附加顺序 用最外面的球, 依次附加里面的球 最后附加的物体优先级最高 附加顺序 用最里面的球, 依次附加外面的球 这样渲染顺序就对了...

【C++】多态原理剖析,Visual Studio开发人员工具使用查看类结构cl /d1 reportSingleClassLayout

author&#xff1a;&Carlton tag&#xff1a;C topic&#xff1a;【C】多态原理剖析&#xff0c;Visual Studio开发人员工具使用查看类结构cl /d1 reportSingleClassLayout website:黑马程序员C tool&#xff1a;Visual Studio 2019 date&#xff1a;2023年7月24日 目…...

vue实现flv格式视频播放

公司项目需要实现摄像头实时视频播放&#xff0c;flv格式的视频。先百度使用flv.js插件实现&#xff0c;但是两个摄像头一个能放一个不能放&#xff0c;没有找到原因。&#xff08;开始两个都能放&#xff0c;后端更改地址后不有一个不能放&#xff09;但是在另一个系统上是可以…...

iptables安全技术和防火墙

防火墙&#xff1a;隔离功能 位置&#xff1a;部署在网络边缘或主机边缘&#xff0c;在工作中&#xff0c;防火墙的主要作用是决定哪些数据可以被外网访问以及哪些数据可以进入内网访问&#xff0c;主要在网络层工作 其他类型的安全技术&#xff1a;1、入侵检测系统 2、入侵…...

微信小程序开发5

一、自定义组件-插槽 1.1、什么是插槽 在自定义组件的wxml结构中&#xff0c;可以提供一个<slot>节点(插槽)&#xff0c;用于承载组件使用者提供的wxml结构 1.2、单个插槽 在小程序中&#xff0c;默认每个自定义组件中允许使用一个<slot>进行占位&#xff0c;这种…...

【算法题】2681. 英雄的力量

题目&#xff1a; 给你一个下标从 0 开始的整数数组 nums &#xff0c;它表示英雄的能力值。如果我们选出一部分英雄&#xff0c;这组英雄的 力量 定义为&#xff1a; i0 &#xff0c;i1 &#xff0c;… ik 表示这组英雄在数组中的下标。那么这组英雄的力量为 max(nums[i0],n…...

fastutil简单测试下性能

前言 简单测试一下fastutil的实现和Java类库实现的速率。 使用jmh进行测试。 简单解释一下&#xff0c;每轮测试预热2次&#xff0c;每次1s&#xff1b;实测2次&#xff0c;每次1秒。 进行5轮测试。数组大小3种。 package fastutil;import it.unimi.dsi.fastutil.ints.IntArr…...

【FAQ】关于无法判断和区分用户与地图交互手势类型的解决办法

一&#xff0e; 问题描述 当用户通过缩放手势、平移手势、倾斜手势和旋转手势与地图交互&#xff0c;控制地图移动改变其可见区域时&#xff0c;华为地图SDK没有提供直接获取用户手势类型的API。 二&#xff0e; 解决方案 华为地图SDK的地图相机有提供CameraPosition类&…...

腾讯云裸金属服务器CPU型号处理器主频说明

腾讯云裸金属服务器CPU型号是什么&#xff1f;标准型BMSA2裸金属服务器CPU采用AMD EPYC ROME处理器&#xff0c;BMS5实例CPU采用Intel Xeon Cooper Lake处理器&#xff0c;腾讯云服务器网分享落进书房武器CPU型号、处理器主频说明&#xff1a; 裸金属服务器CPU处理器说明 腾讯…...

工程安全监测无线振弦采集仪在建筑物中的应用

工程安全监测无线振弦采集仪在建筑物中的应用 工程安全监测无线振弦采集仪是一种用于建筑物结构安全监测的设备&#xff0c;它采用了无线传输技术&#xff0c;具有实时性强、数据精度高等优点&#xff0c;被广泛应用于建筑物结构的实时监测和预警。下面将从设备的特点、应用场…...

【iOS】isKindOfClass和isMemberOfClass方法

前言 这个归根结底还是在考察我们对isa走向图和类的继承的理解&#xff0c;也就是苹果官方这幅图&#xff1a; 接下来的函数调用流程请参考这张图。 1 isKindOfClass方法 1.1 objc_opt_isKindOfClass C函数 查看源码可发现&#xff0c;无论是谁调用isKindOfClass方法都会…...

李飞飞「具身智能」VoxPoser:0预训练完成复杂指令

机器人接入大模型听懂人话 论文地址&#xff1a; https://voxposer.github.io/voxposer.pdf 项目主页&#xff1a; https://voxposer.github.io/ 参考链接&#xff1a; [1]https://twitter.com/wenlong_huang/status/1677375515811016704 [1]https://www.amacad.org/publicatio…...

前端八股文

info 毕业设计(课题、方向 本科毕业设计&#xff1a;家庭医生签约管理系统后台开发(微信小程序) 硕士课题&#xff1a;医学图像分割(婴儿脑分割) 51062319991129351X 邮编 重庆市南岸区 400000 13183849783 // 18728097929 // 13158442955 中国广电四川网络股份有限公司中江…...

前端年度工作述职报告优秀

前端年度工作述职报告优秀篇1 尊敬的各位领导、各位同仁&#xff1a; 大家好!按照20__年度我公司就职人员工作评估的安排和要求&#xff0c;我认真剖析、总结了自己的工作情况&#xff0c;现将本人工作开展情况向各位领导、同仁做以汇报&#xff0c;有不妥之处&#xff0c;希…...

AI Agent三大核心组件解析:Skills、MCP与Plugins

随着人工智能技术的快速发展&#xff0c;AI Agent已成为连接用户需求与智能服务的重要桥梁。在构建高效的AI Agent系统时&#xff0c;Skills、MCP和Plugins构成了其核心功能架构的三个重要组成部分。本文将深入分析这三种组件的特点、差异以及它们在AI Agent体系中的协同作用。…...

Arduino驱动AY-3-8910 PSG芯片的轻量级音频库

1. 项目概述 MOS Electronics AY-3-8910 Library 是一个面向 Arduino 平台的轻量级驱动库&#xff0c;专为通用仪器&#xff08;General Instrument&#xff09;于1978年推出的经典可编程声音发生器&#xff08;Programmable Sound Generator, PSG&#xff09;芯片 AY-3-8910 …...

如何用 Splinter 在 5 分钟内完成第一个 Web 自动化测试

如何用 Splinter 在 5 分钟内完成第一个 Web 自动化测试 【免费下载链接】splinter splinter - python test framework for web applications 项目地址: https://gitcode.com/gh_mirrors/sp/splinter Splinter 是一款强大的 Python Web 应用测试框架&#xff0c;能帮助…...

华为eNSP实战:通过路由器物理接口高效打通VLAN间通信

1. VLAN间通信基础与华为eNSP环境搭建 刚接触网络工程的朋友可能对VLAN间通信感到困惑。简单来说&#xff0c;VLAN就像大楼里的不同楼层&#xff0c;而路由器就是连接这些楼层的电梯。我在实际项目中遇到过不少新手配置VLAN路由的问题&#xff0c;最常见的就是物理接口配置错误…...

[资料整理]魔法师传奇 MagicMayhem

魔法师传奇 Magic&Mayhem魔法师传奇中文站网站魔法师传奇2023版介绍魔法师传奇中文站网站 网站地址&#xff1a;魔法师传奇中文站 http://zb.l4d.top:1983/magic 备用链接&#xff1a;http://zb.my.to:1983/magic 论坛地址&#xff1a;魔法师传奇中文论坛 http://zb.l4d.t…...

Godot 4 2D 物理引擎位置初始化踩坑:add_child() 和 position 到底谁先? (错误位置触发物理事件)

Godot 4 2D 物理引擎位置初始化踩坑&#xff1a;add_child() 和 position 到底谁先&#xff1f; 在 Godot 4 做 2D 游戏时&#xff0c;很多人都会遇到一个很诡异的问题&#xff1a; 我明明想把一个 PackedScene 实例生成在 B 点&#xff0c;结果它却会在默认位置 A 点 短暂触发…...

利用快马平台与vue3组合式api,十分钟快速搭建后台管理系统原型

最近在尝试用Vue3快速搭建后台管理系统原型时&#xff0c;发现了一个特别高效的工作流。通过组合式API和现成的UI组件库&#xff0c;配合InsCode(快马)平台的智能生成能力&#xff0c;整个过程比传统方式快了好几倍。下面分享下我的实践过程&#xff1a; 项目初始化与结构设计 …...

深入理解SMU Debug Tool:解锁AMD Ryzen处理器的底层性能调控能力

深入理解SMU Debug Tool&#xff1a;解锁AMD Ryzen处理器的底层性能调控能力 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: …...

Delphi经典8大天坑|第六篇:方法参数缺省值写在实现区,导致缺省值不生效

一、现象描述给方法&#xff08;过程/函数&#xff09;定义参数缺省值&#xff08;默认值&#xff09;后&#xff0c;调用方法时不传递该参数&#xff0c;期望使用缺省值&#xff0c;但实际运行时&#xff0c;缺省值不生效&#xff0c;参数呈现随机值或错误值&#xff0c;排查时…...

别再只问原理了!用Spring Cloud Gateway + Redis手把手搭建分布式令牌桶限流(附完整配置)

实战指南&#xff1a;Spring Cloud Gateway与Redis构建分布式令牌桶限流系统 微服务架构下&#xff0c;流量管控如同城市交通信号灯——没有合理的红绿灯设计&#xff0c;再宽阔的道路也会陷入瘫痪。最近在帮一家跨境电商平台重构网关层时&#xff0c;我们仅用Spring Cloud Gat…...