C语言好题解析(三)

目录

  • 选择题一
  • 选择题二
  • 选择题三
  • 选择题四
  • 编程题一
  • 编程题二

选择题一

以下程序段的输出结果是()
#include<stdio.h>
int main()
{
char s[] = "\\123456\123456\t";
printf("%d\n", strlen(s));
return 0;
}
A: 12      B: 13      C: 16     D: 以上都不对

【答案】 A
【分析】这道题涉及到转义字符,\是一种转义字符,而\就是以(第一个\)修饰(第二个\)使(第二个\)不表示转义的意思(这里有点绕)
因此\ \为一个字符,而123456则为6个字符。
对后面的\123456\t来说,\123表示一个字符(\ddd:ddd是表示一个1-3位的八进制数字),而456则表示3个字符,\t表示一个字符。
接下来就是strlen的含义,strlen是计算字符串的长度,直到遇见\0才会停止,因此经过前面的分析,strlen(s)=1+6+1+3+1=12
加粗样式

选择题二

若有以下程序,则运行后的输出结果是()
#include <stdio.h>
#define N 2
#define M N + 1
#define NUM (M + 1) * M / 2
int main()
{
printf("%d\n", NUM);
return 0;
}
A: 4       B: 8       C: 9      D: 6

【答案】 B
【分析】这道题就是替换变量,根据上面的定义我们知道
N=2
M=N+1
NUM=(M+1)*M/2
将等式带入第三表达式即可得出结果。
值得注意的是许多人算出的结果为6,因为他们在算时NUM=(2+1+1)(2+1)/2=6事实上这道题我也是这样算的
但是实际上正确的算法为:
NUM=(2+1+1) *2+1/2=8.5
这是因为(M+1)*M的第二个M并没有()因此在计算时不能擅自添加()

最后的8则是因为%d为int的打印方式,所以将小数点后的5省略了
在这里插入图片描述

选择题三

如下函数的 f(1) 的值为( )
int f(int n)
{
static int i = 1;
if(n >= 5)
return n;
n = n + i;
i++;
return f(n);
}
A: 5      B: 6       C: 7       D: 8

【答案】C
【分析】这道题是递归类型的题 ,n>=5为限制条件,但需要注意的是static修饰的i
千万不用以为int i=1,i就一直为1了,static修饰使它可以保留以前变化的值,因此i是一直在增加的
详细的过程如图:
在这里插入图片描述
在这里插入图片描述

选择题四

下面3段程序代码的效果一样吗( )

int b;
(1)const int *a = &b;
(2)int const *a = &b;
(3)int *const a = &b;
A: (2)=(3)  B: (1)=(2)  C: 都不一样  D: 都一样

【答案】 B
【分析】我们需要了解const的含义,只要了解了含义就可以做这道题
const是修饰他后面的变量使它的地址或者数值无法改变。
比如:
(1)中const修饰的是a,就说明a无法改变,因为a是表示的地址,所以a所表示的地址无法改变,但是a的值是可以改变的。
(2)中const修饰的仍是*a(和int无关)
(3)const修饰的是a,也就说明a所代表的数值无法改变,但a的地址是可以改变。

编程题一

验证尼科彻斯定理

任何一个整数 m 的立方都可以写成 m 个连续奇数之和
例如
1^3=1
2^3=3+5
3^3=7+9+11
4^3=13+15+17+19
输入一个正整数 m(m≤100) 
将 m 的立方写成 m 个连续奇数之和的形式输出。
注意:本题含有多组输入数据。
输入描述:输入一个int整数
输出描述:输出分解后的string
示例:
输入:6
输出:31+33+35+37+39+41

【题目分析】
我们需要用n将m的立方表示出来,然后由连续奇数之和可以设第一个奇数a1=x,然后由等差数列的求和公式可以算出Sm=m*x+(m-1)2,
即可得出关系式m^3=m
x+2 * (m-1) * m
即x=m * m- m+1
因为x为第一项,为了求出x的具体值我们需要用到for循环

【代码】

int main()
{
	int m = 0;
		scanf("%d", &m);
		int n = m * m * m;
		int x = m * m - m + 1;
		for (int i = 1; i <= m; i++)
		{
			if (i == m)
				printf("%d", x);
			else
			{
				printf("%d+", x);
				x += 2;
			}

		}
	return 0;
}

编程题二

等差数列 2,5,8,11,14, … 。(从 2 开始的 3 为公差的等差数列),求等差数列前 n 项和

注意:本题有多组输入
输入描述:输入一个正整数 n 。
输出描述:输出一个相加后的整数
示例:
输入:2 输入:275
输出:7 输出:113575
说明:2+5=7 说明:2+5+...+821+824=113575

【题目分析】
这道题和上一题的解法类似,但是是求的Sn
因此需要设一个sum(即Sn),还有x通过式子sum+=x,x+=3再加上循环即可解决问题

【代码】

#include<stdio.h>
int main()
{
	int n, x = 2, sum = 0;
	scanf("%d", &n);
	for (int i = 1; i <= n; i++)
	{
		sum += x;
		x += 3;
	}
	printf("%d", sum);
	return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/80316.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

高并发内存池(centralcache)[2]

Central cache threadcache是每个线程独享&#xff0c;而centralcache是多线程共享&#xff0c;需要加锁&#xff08;桶锁&#xff09;一个桶一个锁 解决外碎片问题&#xff1a;内碎片&#xff1a;申请大小超过实际大小&#xff1b;外碎片&#xff1a;空间碎片不连续&#x…

redis 发布和订阅

目录 一、简介 二、常用命令 三、示例 一、简介 Redis 发布订阅 (pub/sub) 是一种消息通信模式&#xff1a;发送者 (pub) 发送消息&#xff0c;订阅者 (sub) 接收消息。Redis 客户端可以订阅任意数量的频道。下图展示了频道 channel1 &#xff0c;以及订阅这个频道的三个客户…

53.Linux day03 文件查看命令,vi/vim常用命令

今天进行了新的学习。 目录 1.cat a.查看单个文件的内容&#xff1a; b.查看多个文件的内容&#xff1a; c.将多个文件的内容连接并输出到一个新文件&#xff1a; d.显示带有行号的文件内容&#xff1a; 2.more 3.less 4.head 5.tail 6.命令模式 7.插入模式 8.图…

Nginx反向代理技巧

跨域 作为一个前端开发者来说不可避免的问题就是跨域&#xff0c;那什么是跨域呢&#xff1f; 跨域&#xff1a;指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的&#xff0c;是浏览器对javascript施加的安全限制。浏览器的同源策略是指协议&#xff0c;域名…

SQL Server Express 自动备份方案

文章目录 SQL Server Express 自动备份方案前言方案原理SQL Server Express 自动备份1.创建存储过程2.设定计划任务3.结果检查sqlcmd 参数说明SQL Server Express 自动备份方案 前言 对于许多小型企业和个人开发者来说,SQL Server Express是一个经济实惠且强大的数据库解决方…

机器学习基础之《分类算法(1)—sklearn转换器和估计器》

一、转换器 1、什么是转换器 之前做特征工程的步骤&#xff1a; &#xff08;1&#xff09;第一步就是实例化了一个转换器类&#xff08;Transformer&#xff09; &#xff08;2&#xff09;第二步就是调用fit_transform&#xff0c;进行数据的转换 2、我们把特征工程的接口称…

在 React+Typescript 项目环境中创建并使用组件

上文 ReactTypescript清理项目环境 我们将自己创建的项目环境 好好清理了一下 下面 我们来看组件的创建 组件化在这种数据响应式开发中肯定是非常重要的。 我们现在src下创建一个文件夹 叫 components 就用他专门来处理组件业务 然后 我们在下面创建一个 hello.tsx 注意 是t…

基于Echarts的大数据可视化模板:智慧门店管理

目录 引言智慧门店管理的重要性Echarts在智慧门店管理中的应用智慧门店概述定义智慧门店的概念和核心智慧门店的关键技术智慧门店的发展趋势与方向智慧门店管理的作用Echarts与大数据可视化Echarts库以及其在大数据可视化领域的应用优势开发过程和所选设计方案模板如何满足管理…

SpringBoot中的可扩展接口

目录 # 背景 # 可扩展的接口启动调用顺序图 # ApplicationContextInitializer # BeanDefinitionRegistryPostProcessor # BeanFactoryPostProcessor # InstantiationAwareBeanPostProcessor # SmartInstantiationAwareBeanPostProcessor # BeanFactoryAware # Applicati…

ARM体系结构学习笔记:CPU并不直接访问内存

CPU并不直接访问内存 原因: 寄存器可以更快的进行访问存取指令集 LDR STR 寻址模式 Pre-index [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KFSzzeZB-1692235692358)(https://cdn.jsdelivr.net/gh/nzcv/picgo/20220117071415.png)] Post-index …

Docker资源控制

目录 一、CPU 资源控制 1.设置CPU使用率上限 2.设置CPU资源占用比&#xff08;设置多个容器时才有效&#xff09; 3.设置容器绑定指定的CPU 二、对内存使用的限制 三、对磁盘IO配额控制&#xff08;blkio&#xff09;的限制 一、CPU 资源控制 cgroups&#xff0c;是一个非常强…

Spring源码深度解析二(AOP)

书接上文 9. AOP源码深度剖析 概述 AOP&#xff08;Aspect Orient Programming&#xff09;&#xff1a;面向切面编程&#xff1b; 用途&#xff1a;用于系统中的横切关注点&#xff0c;比如日志管理&#xff0c;事务管理&#xff1b; 实现&#xff1a;利用代理模式&#x…

【实战】十一、看板页面及任务组页面开发(二) —— React17+React Hook+TS4 最佳实践,仿 Jira 企业级项目(二十四)

文章目录 一、项目起航&#xff1a;项目初始化与配置二、React 与 Hook 应用&#xff1a;实现项目列表三、TS 应用&#xff1a;JS神助攻 - 强类型四、JWT、用户认证与异步请求五、CSS 其实很简单 - 用 CSS-in-JS 添加样式六、用户体验优化 - 加载中和错误状态处理七、Hook&…

2023+HuggingGPT: Solving AI Tasks with ChatGPT and itsFriends in Hugging Face

摘要&#xff1a; 语言是llm(例如ChatGPT)连接众多AI模型(例如hugs Face)的接口&#xff0c;用于解决复杂的AI任务。在这个概念中&#xff0c;llms作为一个控制器&#xff0c;管理和组织专家模型的合作。LLM首先根据用户请求规划任务列表&#xff0c;然后为每个任务分配专家模…

LeetCode 热题 100(四):48. 旋转图像、240. 搜索二维矩阵 II、234. 回文链表

一.48. 旋转图像 题目要求&#xff1a;就是一个顺时针的旋转过程。 思路&#xff1a;观察矩阵&#xff0c;得出翻转前第i行的第J个元素 等于 翻转后倒数第i列的第J个元素&#xff0c;举例说明&#xff0c;第1行第2个元素为“2”&#xff0c;翻转后到了 倒数第1列的第2个元素…

git 回滚相关问题

原本用as自带的git执行回滚任务&#xff0c; 但是提交之后发现并没有成功&#xff0c; 后面通过命令行的方式重新回滚并且提交上去&#xff0c;就可以了 说明as的git还是有点小瑕疵&#xff0c;还是命令行最稳妥 相关博文&#xff1a; git代码回滚操作_imkaifan的博客-CSDN博…

数据采集器丨高效传输、集中管理

随时科技的发展&#xff0c;数据采集器成为各行各业中的常用重要仪器&#xff0c;为人们对各种不同数据的采集处理&#xff0c;提供了无可比拟的便利。 数据采集器能够接入不同种类的RS485设备&#xff0c;洞察世间万象&#xff0c;探测大千世界的细微脉动&#xff0c;并将监测…

SNMP简单介绍

SNMP SNMP是广泛应用于TCP/IP网络的网络管理标准协议&#xff0c;该协议能够支持网络管理系统&#xff0c;用以监测连接到网络上的设备是否有任何引起管理上关注的情况。SNMP采用轮询机制&#xff0c;提供最基本的功能集&#xff0c;适合小型、快速、低价格的环境使用&#xf…

Springboot 实践(3)配置DataSource及创建数据库

前文讲述了利用MyEclipse2019开发工具&#xff0c;创建maven工程、加载springboot、swagger-ui功能。本文讲述创建数据库&#xff0c;为项目配置数据源&#xff0c;实现数据的增删改查服务&#xff0c;并通过swagger-ui界面举例调试服务控制器 创建数据库 项目使用MySQL 8.0.…

感觉和身边其他人有差距怎么办?

虽然清楚知识需要靠时间沉淀&#xff0c;但在看到自己做不出来的题别人会做&#xff0c;自己写不出的代码别人会写时还是会感到焦虑怎么办&#xff1f; 你是否也因为自身跟周围人的差距而产生过迷茫&#xff0c;这份迷茫如今是被你克服了还是仍旧让你感到困扰&#xff1f; 下…