考研C语言刷题篇之分支循环结构一

news2024/11/16 4:44:12

目录

第一题

第二题

 方法一:要循环两次,一次求阶乘,一次求和。

注意:在求和时,如果不将sum每次求和的初始值置为1,那么求和就会重复。

方法二:

第三题

方法一:用数组遍历的思想

 方法二用折半查找的思想

折半查找的思想

 第四题

方法一:用两个变量,两个数组进行复制


第一题

求n!

int main() {

	int n = 0;
	int sum = 1;
	scanf("%d", &n);
	for (int i = 1; i <= n; i++) {
		sum = sum * i;
		//sum *=i;
	}
	printf("%d\n",sum);
	return 0;
}

第二题

第二题1!+2!+...+n!

 方法一:要循环两次,一次求阶乘,一次求和。

注意:在求和时,如果不将sum每次求和的初始值置为1,那么求和就会重复。

正常求和,1+1*2+1*2*3......

每一重置sum:1+1+1*2+1+1*2+1*2*3+1+1*2+1*2*3+1*2*3*4

方法二:

//第二题1!+2!+...+n!
int main() {

	int n = 0;
	scanf("%d", &n);
	int sum = 1;
	int cum = 0;
	for(int i = 1;i<=n;i++)				//要循环两次
	{
		sum = 1;						//让sum每次置为1
		for (int j = 1; j <= i; j++) 
		{
			sum = sum * j;
		}
		cum = cum + sum;
	}

	/*for (int i = 1; i <= n; i++) {
		sum *= i;
		cum += sum;
	}*/
	printf("%d", cum);
	return 0;
}

第三题

 在有序数组1,2,3,4,5,6,7,8,9,10里查找元素

printf("%d\n", sizeof(arr));    //求数组的大小
    printf("%d\n", sizeof(arr[0]));        //求数组一个元素的大小
    printf("%d\n", sizeof(arr) / sizeof(arr[0])         //求数组的元素个数

方法一:用数组遍历的思想

 这里用到sizeof函数,可以求出数组的大小

//第三题 在有序数组里查找元素

方法一遍历查找
int main() {

	int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
	printf("%d\n", sizeof(arr));
	printf("%d\n", sizeof(arr[0]));
	printf("%d\n", sizeof(arr) / sizeof(arr[0]));
	int n = 0;
	scanf("%d", &n);
	int i=0;
	while (i<=10) {
		if (arr[i] != n) {			
        i++;
	}
		else {
			printf("找到了,下标为%d", i);
			break;
		}
	}

	return 0;
}

 方法二用折半查找的思想

 用一个变量left表示第一个元素,一个变量right表示最后一个元素。

数组的下标是从0开始的,所以right的值应该是数组长度-1;

折半查找的思想

//方法二折半查找

	int main(){

		int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
		int n = 0;
		scanf("%d", &n);
		int tp = sizeof(arr) / sizeof(arr[0]);
		int left = 0;
		int right = tp - 1;
		int mid = (left + right) / 2;
		while (left <= right) {
			mid = (left + right) / 2;
			if (n > arr[mid]) {
				left = mid + 1;
			}
			else if (n < arr[mid]) {
				right = mid - 1;
			}
			else {
				printf("找到了下标为%d",mid);
				break;
			}
		}

		return 0;
	}

 第四题

从两头向中间移动,生成相应的字符串

如将 welcome to China !!!,从两头向中间输出

输出结果如下 

方法一:用两个变量,两个数组进行复制

#define _CRT_SECURE_NO_WARNINGS
#include<stdlib.h>
#include<stdio.h>
//第四题 
int main() {

		//方法一
		char arr1[] = "welcome to China!!!";
		char arr2[] = "*******************";
		int tp = sizeof(arr1) / sizeof(arr1[0]);
		int left = 0;
		int right = tp - 1;

		while (left <= right) {
				arr2[left] = arr1[left];
				arr2[right] = arr1[right];
				left++;
				right--;
				printf("%s\n", arr2);
		}
		return 0;

}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring高手之路-Spring事务失效的场景详解

目录 前言 Transactional 应用在非 public 修饰的方法上 同一个类中方法调用&#xff0c;导致Transactional失效 final、static方法 Transactional的用法不对 Transactional 注解属性 propagation 设置不当 Transactional注解属性 rollbackFor 设置错误 用错注解 异常…

实战whisper:本地化部署通用语音识别模型

前言 Whisper 是一种通用语音识别模型。它是在大量不同音频数据集上进行训练的&#xff0c;也是一个多任务模型&#xff0c;可以执行多语言语音识别、语音翻译和语言识别。 这里呢&#xff0c;我将给出我的一些代码&#xff0c;来帮助你尽快实现【语音转文字】的服务部署。 以下…

最佳实践分享:SQL性能调优

SQL性能调优是一个需要不断探索和实践的过程&#xff0c;旨在确保数据库查询的高效运行。本文将分享一些SQL性能调优的最佳实践&#xff0c;帮助您提升数据库性能&#xff0c;减少查询响应时间。 一、索引优化 索引是提高查询性能的关键。以下是一些关于索引优化的建议&#…

使用micro-app将现有项目改造成微前端,对现有项目实现增量升级

使用micro-app将现有项目改造成微前端&#xff0c;对现有项目实现增量升级 基座应用 1、安装依赖 npm i micro-zoe/micro-app --save2、在入口引入 //main.js import microApp from micro-zoe/micro-appnew Vue({ }) //在new Vue 下面执行 microApp.start()3、新增一个vue页…

ASP.NET Core 的 Web Api 实现限流 中间件

Microsoft.AspNetCore.RateLimiting 中间件提供速率限制&#xff08;限流&#xff09;中间件。 它是.NET 7 以上版本才支持的中间件&#xff0c;刚看了一下&#xff0c;确实挺好用&#xff0c;下面给大家简单介绍一下&#xff1a; RateLimiterOptionsExtensions 类提供下列用…

5 个被低估的开源项目

文章目录 1.集算器 -数据处理2. Firecamp - 邮递员替代方案3.Keploy——后端 测试4. Hanko - 密钥验证5. Zrok - Ngrok 类固醇 长话短说 本文列出了五个不太受欢迎的优秀项目&#xff0c;您应该尝试一下。&#x1f525; 这些工具旨在改进数据处理、API 开发、后端测试、身份验…

MiniTab的拟合回归模型的系列参数设置

为拟合回归模型指定模型项 统计 > 回归 > 回归 > 拟合回归模型 > 模型 可以向模型添加交互作用项和多项式项。默认情况下&#xff0c;模型仅包含在主对话框中输入的预测变量的主效应。添加项的方法有很多。假设预测变量列表具有 3 个连续变量 X、Y、Z 和 2 个类别…

WPF XAML(二)

一、前言 本文是 WPF XAML&#xff08;一&#xff09;的续文&#xff0c;链接我就放下面了。 WPF XAML&#xff08;一&#xff09;-CSDN博客https://blog.csdn.net/qq_71897293/article/details/135537094?spm1001.2014.3001.5501 二、XAML 中空白与特殊字符 在XAML中我们在…

鸿蒙ArkTS的起源和简介

theme: lilsnake 1、引言 Mozilla创造了JS&#xff0c;Microsoft创建了TS&#xff0c;Huawei进一步推出了ArkTS。 从最初的基础的逻辑交互能力&#xff0c;到具备类型系统的高效工程开发能力&#xff0c;再到融合声明式UI、多维状态管理等丰富的应用开发能力&#xff0c;共同…

TA百人计划学习笔记 2.6伽马矫正

资料 源视频 【技术美术百人计划】图形 2.6 伽马校正_哔哩哔哩_bilibili PPT 2600_伽马矫正 参考笔记 2.6伽马&#xff08;Gamma&#xff09;校正 语雀 从0开始的技术美术之路&#xff08;十&#xff09;伽马校正_线性工作流 技术美术-CSDN博客为什么 韦伯定理 人眼对于暗部是…

《MyBatis》-- 流式查询内存性能优化-单条数据加工

阿丹-需求/场景&#xff1a; 在项目场景中涉及到数据二次加工。需要将单个对象数据转为按照规定的数据字典的转换。以及需要转换数据结构。从对象转换为按照规定的值和规则的数组。 因为要写入csv文件&#xff0c;涉及到文件的输出流。 之前讨论针对的解决方案&#xff1a; …

HCIP第一次练习 -- RIP复习实验

要求&#xff1a; 需求:R1-R2-R3-R4-R5运行RIPV2 R6-R7运行RIPV1 1.使用合理地址规划网络&#xff0c;各自创建环回接口 2.R1创建环回172.16.1.1/24172.16.2.1/24 172.16.3.1/24 3.要求R3使用R2访问R1环回 4.减少路由条自数量,增加路由传递安全性 5.R5创建一个环回模拟运营商,不…

FFmpeg之SwrRessample

文章目录 一、概述二、重采样流程三、重要结构体3.1、SwrContext3.2、ResamplerContext 四、重要函数4.1、swr_alloc4.2、swr_alloc_set_opts4.3、av_opt_set_*4.4、swr_init4.5、av_samples_alloc_array_and_samples4.6、av_samples_alloc4.7、swr_convert4.8、swr_get_delay4…

Apache Solr <= 8.8.1任意文件读取漏洞复现CVE-2019-17558

一、环境准备 搭建环境vulhub&#xff0c;需要提前安装docker环境 docker安装&#xff1a;docker--安装docker-ce-CSDN博客 vulhub地址&#xff1a;https://github.com/vulhub/vulhub #创建靶场环境 mkdir /opt/vulhub cd /opt/vulhub git https://github.com/vulhub/vulhu…

Python基础知识:整理15 列表的sort方法

1 sorted() 方法 之前我们学习过 sorted() 方法&#xff0c;可以对列表、元组、集合及字典进行排序 # 1.列表 ls [1, 10, 8, 4, 5] ls_new sorted(ls, reverseTrue) print(ls_new) …

【Vue】后端返回文件流,前端预览文件

let date;request({url: this.$route.query.url,method: get,responseType: blob,}).then(resp > {date respthis.path window.URL.createObjectURL(new Blob([resp], {type: "application/pdf"}))}).catch((e) > {//旧版本浏览器下的blob创建对象window.Blo…

2019年认证杯SPSSPRO杯数学建模C题(第二阶段)保险业的数字化变革全过程文档及程序

2019年认证杯SPSSPRO杯数学建模 基于统计建模的车险业数字变革研究 C题 保险业的数字化变革 原题再现&#xff1a; 车险&#xff0c;即机动车辆保险。保险自身是一种分散风险、消化损失的经济补偿制度&#xff0c;车险即为分散机动车辆在行驶过程中可能发作的未知风险和损失…

基于无人机的消防灭火系统设计

摘要&#xff1a;人类社会的进步&#xff0c;使火灾变得更加频繁且越来越复杂&#xff0c;随着这些年无人机技术的发展&#xff0c;将无人机技术融入消防灭火逐渐变成必然。消防救援采用无人机主要有以下几点原因&#xff1a;一、对火场及火场周围环境信息十分匮乏&#xff0c;…

CUDA tips

命令行查看核函数消耗的寄存器和共享内存数量 nvcc --ptxas-options-v reduce_sum.cu nvprof 使用 由于 8.0 及以上计算能力的显卡用不了 nvprof&#xff0c;官方建议用 nsight system 和 ncu&#xff0c;但是如果只想命令行打印表格查看 kernel 概况感觉还是 nvprof 方便&am…

.Net Core 使用 AspNetCoreRateLimit 实现限流

上一篇文章介绍过ASP.NET Core 的 Web Api 实现限流 中间件-CSDN博客 使用.NET 7 自带的中间件 Microsoft.AspNetCore.RateLimiting 可以实现简单的Api限流&#xff0c;但是这个.NET 7以后才集成的中间件&#xff0c;如果你使用的是早期版本的.NET&#xff0c;可以使用第三方库…