高级语言期末2011级A卷

news2024/12/23 18:54:29

1.编写函数,判定正整数m和n(均至少为2)是否满足:数m为数n可分解的最小质因数(数n可分解的最小质因数为整除n的最小质数)
提示:判定m为质数且m是n的最小因数

#include <stdio.h>
#include <stdbool.h>

bool isprime(int m,int n) {
	for(int i=0; i<m; i++) {
		if(m%i==0||n%i==0)
			return false;
	}
	if(n%m!=0)
		return false;
	return true;
}

2.编写函数,对给定的整数数组a的前n个元素排序,使得所有正整数均出现在负整数和零之前。
提示:排序结果中,正整数之间的出现顺序不受限制,负整数和0之间的出现顺序不限制。
例如:原数组为-1、4、-3、0、2、1、-9、7,则排序后可以为4、2、1、7、0、-1、-3、-9

#include <stdio.h>

void sort(int *arr,int n) {
	for(int i=0; i<n-1; i++)
		for(int j=0; j<n-i-1; j++)
			if(arr[j]<=0) {
				int temp=arr[j];
				arr[j]=arr[j+1];
				arr[j+1]=temp;
			}
	for(int i=0; i<n-1; i++)
		for(int j=0; j<n-i-1; j++)
			if(arr[j]<0) {
				int temp=arr[j];
				arr[j]=arr[j+1];
				arr[j+1]=temp;
			}
}

int main() {
	int arr[]= {-1,4,-3,0,2,1,-9,7};
	sort(arr,8);
	for(int i=0; i<8; i++) {
		printf("%d ",arr[i]);
	}
}

3.编写递归函数,实现按照如下公式计算的功能。其中n为自然数。
提示:如果独立编写阶乘运算函数,可以不考虑存储溢出,默认结果类型为整型。

f(n)=0/(1*2!)+1/(2*3!)+2/(3*4!)+...+n/((n+1)*(n+2)!)

#include <stdio.h>

int fac(int n) {
	if(n==0)
		return 1;
	else
		return n*fac(n-1);
}

double func(int n) {
	if(n==0)
		return 0;
	return 1.0*n/((n+1)*fac(n+2))+func(n-1);
}

4.定义一个表示学生的结构体(包含3个字段:姓名、性别、成绩),编写函数,将下图所示的结构体数组s中的前n个学生的信息,存储到当前目录下的output.txt中。
提示:性别可以定义为bool、int、enum等类型均可,存储信息的具体形式不限制

张三李四......赵九
男(true)女(false)男(true)
837697

例如:一个教师的信息为Zhangsan、true、50,另一个教师的信息为Lisi、false、37。

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

typedef struct student {
	char name[20];
	bool sex;
	int score;
} student;

void save(struct student stu[],int n) {
	FILE *file;
	if((file=fopen("out.txt","w"))==NULL) {
		printf("open error");
		exit(0);
	}
	for(int i=0; i<n; i++) {
		fprintf(file,"%s %d %d\n",stu[i].name,stu[i].sex,stu[i].score);
	}
	fclose(file);
}

5.定义一个单链表(每个结点包含2个字段:整数信息、后继指针),如下图所示。编写函数,删除该单链表中所含整数信息等于x的多个重复结点。
例如:若单链表中存储的整数信息依次是1、5、5、0、5、6、0、0、5、1,如果x为5,则得到的单链表中相应信息依次是1、0、6、0、0、1。

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

typedef struct node {
	int key;
	struct node *next;
} node;

void del(struct node *head,int x) {
	struct node *dummyhead=(struct node *)malloc(sizeof(struct node));
	dummyhead->next=head;
	struct node *p=head,*pre=dummyhead;
	while(p!=NULL) {
		if(p->key==x)
			pre->next=p->next;
		else
			pre=p;
		p=p->next;
	}
}

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

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

相关文章

算法打卡day1|数组篇|Leetcode 704.二分查找、27.移除元素

数组理论基础 数组是存放在连续内存空间上的相同类型数据的集合&#xff0c;可以方便的通过下标索引的方式获取到下标下对应的数据。 1.数组下标都是从0开始的。 2.数组内存空间的地址是连续的。 正是因为数组的在内存空间的地址是连续的&#xff0c;所以我们在删除或者增添…

Visual Studio 打开.edmx文件不显示表并报错:没有可用于.edmx的编辑器

打开.edmx文件时&#xff0c;呈现的是xml视图&#xff0c;不显示Diagram视图&#xff0c;且弹出报错“没有可用于.edmx的编辑器” 解决方案&#xff1a;在.edmx文件上右键&#xff0c;选择ado.net entity data model designer&#xff0c;即可正常显示表

mysql-MVCC

一、基础概念 1. MVCC的含义 MVCC (Multiversion Concurrency Control)&#xff0c;即多版本并发控制技术&#xff0c;它是通过读取某个时间点的快照数据&#xff0c; 来降低并发事务冲突而引起的锁等待&#xff0c; 从而提高并发性能的一种机制. MVCC 的实现,是通过保存数据…

N种方法解决1(CTF)

这里遇到的问题&#xff1a;一开始采用的base64解码平台有问题&#xff1b;默认解密出的格式为GBK格式&#xff1b;直接复制粘贴发现无法还原图片&#xff1b;又尝试了其他编码的&#xff1b;发现只有hex格式可以保证图片正常还原&#xff1b; 图片是以二进制存储的&#xff1…

响应式页面兼容移动端

文章目录 1. 响应式开发1.1 原理1.2 响应式容器 2. Bootstrap前端开发框架2.1 Bootstrap介绍(1) 优点(2) 版本 2.2 Bootstrap使用2.3 布局容器(1) container类(2) container-fluid类 3.Bootstrap栅格系统3.1 介绍3.2 栅格选项参数3.3 列嵌套3.4 列偏移3.5 列排序3.6 响应式工具…

Android14之input高级调试技巧(一百八十八)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

【Python笔记-设计模式】享元模式

一、说明 享元模式是一种结构型设计模式&#xff0c;它摒弃了在每个对象中保存所有数据的方式&#xff0c;通过共享多个对象所共有的相同状态&#xff0c;让你能在有限的内存容量中载入更多对象。 (一) 解决问题 旨在减少大量相似对象创建时的内存开销 (二) 使用场景 大量…

C++的STL常用算法->常用遍历算法、常用查找算法、常用排序算法、常用拷贝和替换算法、常用算术生成算法、常用集合算法

#include<iostream> using namespace std; #include <algorithm> #include <vector> //常用遍历算法 for_each //普通函数 void print01(int val) { cout << val << " "; } //仿函数 //函数对象 class print02 { public: v…

第 2 章 ROS通信机制_通信机制实操(自学二刷笔记)

重要参考&#xff1a; 课程链接:https://www.bilibili.com/video/BV1Ci4y1L7ZZ 讲义链接:Introduction Autolabor-ROS机器人入门课程《ROS理论与实践》零基础教程 2.5.1 实操01_话题发布 需求描述&#xff1a;编码实现乌龟运动控制&#xff0c;让小乌龟做圆周运动。 结果演…

前端工程化面试题 | 16.精选前端工程化高频面试题

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

微信小程序 uniapp+vue餐厅美食就餐推荐系统

本论文根据系统的开发流程以及一般论文的结构分为三个部分&#xff0c;第一个部分为摘要、外文翻译、目录&#xff1b;第二个部分为正文&#xff1b;第三个部分为致谢和参考文献。其中正文部分包括&#xff1a; &#xff08;1&#xff09;绪论&#xff0c;对课题背景、意义、目…

nodejs:nrm(npm的镜像源管理器)

nrm&#xff08;Npm Registry Manager&#xff09;是一个用于快速切换和管理Node.js包管理器npm的镜像源&#xff08;registry&#xff09;的工具。 通过nrm&#xff0c;开发者可以轻松查看当前使用的npm源、添加新的镜像源、测试不同镜像源的速度&#xff0c;并在多个镜像源之…

pdffactory pro 8中文破解版

详细介绍 PdfFactory&#xff0c;PDF文档虚拟打印机&#xff0c;无须Acrobat即可创建Adobe PDF文件&#xff0c;创建PDF文件的方法比其他方法更方便和高效。支持将多个文档整合到一个PDF文件、增加字体和便签、PDF加密、去水印、压缩优化。 FinePrint&#xff0c;Windows虚拟…

mysql json数据模糊查询

场景&#xff1a;当一个列是json字符串时&#xff0c;想模糊查询json字符串中某个字段。 mysql5.7版本已经有了json数据类型&#xff0c;并且有了处理json数据类型的函数。具体看下面的文档地址。这里只说当需要对json中某个字段模糊查询时该怎么写。可以直接用 like的模糊查询…

【DDD】学习笔记-领域模型与数据模型

领域模型与数据模型 领域驱动的设计模型最重要的概念就是聚合&#xff0c;同时&#xff0c;聚合还要受到限界上下文边界的控制。Eric Evans 之所以要引入限界上下文&#xff0c;其中一个重要原因就是因为我们“无法维护一个涵盖整个企业的统一模型”&#xff0c;于是需要限界上…

!!!Python虚拟环境改名后的坑!!!!

搞了一晚上终于弄好这python虚拟环境的问题了&#xff01;真的是坑啊&#xff01; 本来用的纯python环境下的虚拟环境&#xff0c;一时心血来潮&#xff0c;把电脑重新装了一遍&#xff0c;虚拟环境的目录也改了一下&#xff0c;结果虚拟环境再vscode中是可以使用&#xff0c;…

Llama2模型的优化版本:Llama-2-Onnx

Llama2模型的优化版本&#xff1a;Llama-2-Onnx。 Llama-2-Onnx是Llama2模型的优化版本。Llama2模型由一堆解码器层组成。每个解码器层&#xff08;或变换器块&#xff09;由一个自注意层和一个前馈多层感知器构成。与经典的变换器相比&#xff0c;Llama模型在前馈层中使用了不…

Sora领航AIGC时代:深度解读行业变革与AI工具全景图

随着人工智能技术的飞速发展&#xff0c;越来越多的企业和行业开始将AI融入其核心业务流程中。在这个背景下&#xff0c;Sora以其独特的视角和全面的解决方案&#xff0c;正引领着AIGC&#xff08;人工智能生成内容&#xff09;的趋势变革。 本文将对Sora进行深度解读&#xf…

docker打包当前dinky项目

以下是我的打包过程&#xff0c;大家可以借鉴。我也是第一次慢慢摸索&#xff0c;打包一个公共项目&#xff0c;自己上传。 如果嫌麻烦&#xff0c;可以直接使用我的镜像&#xff0c;直接跳到拉取镜像&#xff01; <可以在任何地方的服务器进行拉取> docker打包当前din…

静态时序分析:SDC约束命令set_input_transition详解

相关阅读 静态时序分析https://blog.csdn.net/weixin_45791458/category_12567571.html 目录 指定端口转换时间 指定端口列表 简单使用 指定上升、下降沿 指定最大、最小条件 与set_clock_transition命令的区别 DC工具在使用set_drive和set_driving_cell建模输入端口驱动…