高级语言期末2012级A卷

1.编写函数,输出任意正整数n的位数(n默认为存储十进制的整形变量)
例如:正整数13,则输出2,;正整数3088,则输出4

#include <stdio.h>int func(int n) {int count=0;while(n>0) {n/=10;count++;}return count;
}int main() {printf("%d",func(21222));
}

2.编写函数,对给定有序整形数组进行整理,使得所有整数只保留一次出现。
例如:原数组为-2、-2、-1、0、0、1、4、4、4,则处理后的结果为-2、-1、0、1、4

#include <stdio.h>int func(int *a,int n) {for(int i=0; i<n-1; i++)if(a[i]==a[i+1]) {for(int j=i+1; j<n-1; j++)a[j]=a[j+1];i--;n--;}
}

3.编写递归函数,求两个数x和y的最大公约数。公式递归定义如下:

gcd(x,y)=\left\{\begin{matrix} x,y=0 & \\ gcd(y,x\%y),y!=0 & \end{matrix}\right.

#include <stdio.h>int gcd(int x,int y) {if(y==0)return x;elsereturn gcd(y,x%y);
}

4.给定图1所示的存储学生信息的结构体数组(每个结构体包含3个字段:姓名、性别、成绩),编写函数,将指定文件in.txt中所有男学生信息存储到该结构体数组中。
(假定文件中存储信息与结构体信息格式相应)

张三李四......赵九
男(true)女(false)男(true)
837697
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>typedef struct student {char name[20];bool sex;int score;
} student;int save(struct student stu[]) {FILE *file;if((file=fopen("out.txt","w"))==NULL) {printf("open error");exit(0);}int i=0;while(!feof(file)) {fscanf(file,"%s",&stu[i].name);fscanf(file,"%d",&stu[i].sex);fscanf(file,"%d",&stu[i].score);fscanf(file,"\n");if(stu[i].sex)i++;}fclose(file);return i;
}

5.给定图2所示的单链表,(每个结点包含2个字段:整数信息、后继指针),编写函数删除该单链表中整数信息为奇数的结点。
例如:若单链表中存储的整数信息依次为1、5、6、3、6、0、0、5、2、1,则处理后的链表中存储的key值依次为6、6、0、0、2。

#include <stdio.h>
#include <stdlib.h>typedef struct node {int key;struct node *next;
} node;struct node *del(struct node *head) {if(head==NULL)return head;while(head!=NULL&&head->key%2==1)head=head->next;struct node* q=head,*p=head->next;while(p!=NULL) {if(p->key%2==1)q->next=p->next;elseq=p;p=p->next;}return head;
}

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于RK3399 Android11适配OV13850 MIPI摄像头

目录 1、原理图分析2、编写和配置设备树3、调试方法4、遇到的问题与解决5、补丁 1、原理图分析 从上图可看出&#xff0c;我们需要关心的&#xff0c;①MIPI数据和时钟接口使用的是MIPI_TX1/RX1 ②I2C使用的是I2C4总线 ③RST复位引脚使用的是GPIO2_D2 ④PWDN使用的是GPIO1_C7 ⑤…

Cesium for Unreal 从源码编译到应用——插件编译

一、安装环境 Unreal Engine 5.3 CMake 3.17.5 Microsoft Visual Studio 2019 二、源码准备 下载cesium-unreal-samples工程。 git clone https://github.com/CesiumGS/cesium-unreal-samples.git 然后在工程目录创建Plugins文件夹&#xff0c;并下载cesium-unreal工程。 …

洛谷 【算法1-2】排序

【算法1-2】排序 - 题单 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 鄙人不才&#xff0c;刷洛谷&#xff0c;迎蓝桥&#xff0c;【算法1-2】排序 已刷&#xff0c;现将 AC 代码献上&#xff0c;望有助于各位 P1271 选举学生会 【深基9.例1】选举学生会 - 洛谷 题目 解答…

鸿蒙开发市场憧憬如何?是否值得一冲~

自从华为放话&#xff1a;鸿蒙NEXT 不再支持安卓操作系统。换句话说&#xff0c;华为就是在向全世界宣布&#xff0c;华为官宣于2024年&#xff0c;不再支持安卓的AOSP。 大家也应该知道&#xff0c;谷歌暂停与华为的合作。为了生存&#xff0c;华为被迫突出了自研的鸿蒙操作系…

【ArcGIS】利用高程进行坡度分析

在ArcGIS中利用高程进行坡度分析 坡度ArcGIS实操参考 坡度 坡度是地表单元陡缓的程度&#xff0c;通常把坡面的垂直高度和水平距离的比值称为坡度。 坡度的表示方法有百分比法、度数法、密位法和分数法四种&#xff0c;其中以百分比法和度数法较为常用。 &#xff08;1&#…

设置主从复制时发生报错Could not find first log file name in binary log index file‘;解决方案

如图所示&#xff0c;slave_io_runnind:no,slave_sql_running:yes 此时&#xff0c;主从配置错误&#xff0c;我们可以查看Last_IO_Error:来查看报错信息 此时&#xff0c;我们需要停止从服务器的主从服务&#xff0c; mysql> stop slave; Query OK, 0 rows affected, 1 w…

数据库管理和设计工具Navicat 介绍

Navicat&#xff1a;一款强大的数据库管理和设计工具 Navicat 是一款广受欢迎的数据库管理和设计工具&#xff0c;它支持多种数据库系统&#xff0c;如 MySQL、MariaDB、SQL Server、Oracle、PostgreSQL 以及 SQLite。凭借其直观的用户界面和强大的管理功能&#xff0c…

Linux之ACL权限管理

文章目录 1.ACL权限介绍二、操作步骤1. 添加测试目录、用户、组&#xff0c;并将用户添加到组2. 修改目录的所有者和所属组3. 设定权限4. 为临时用户分配权限5. 验证acl权限6. 控制组的acl权限 1.ACL权限介绍 每个项目成员有一个自己的项目目录&#xff0c;对自己的目录有完全…

matlab|计及电转气协同的含碳捕集与垃圾焚烧虚拟电厂优化调度

1 主要内容 该程序参考《计及电转气协同的含碳捕集与垃圾焚烧虚拟电厂优化调度》模型&#xff0c;主要实现的是计及电转气协同的含碳捕集与垃圾焚烧虚拟电厂优化调度模型。通过引入碳捕集电厂–电转气–燃气机组协同利用框架&#xff0c;碳捕集的CO2 可作为电转气原料&#xf…

threehit漏洞复现以及防御

说白了跟sql-liql靶场二次注入一样&#xff0c;也是一个转义函数而这次是&#xff0c;入库的时候不转义&#xff0c;出库的时候会转义导致这个漏洞出现 开始测试&#xff1a; 这是我注册完test刚登录的情况 找注入点更新数据的update&#xff0c;很容易找到在age段 这次我注册…

下载 axios.js 文件到本地【linux】

方式一 npm install axios在$NODE_PATH/node_modules/axios/dist路径下即可找到axios.js。 方式二 1、百度搜索 GitHub 官网&#xff1a;https://github.com/ 2、搜索 axios 3、点击 axios/axios 4、下载到本地 5、解压&#xff0c;进入到 dist 文件夹** 参考&#x…

多任务爬虫(多线程和多进程)

在一台计算机中&#xff0c;我们可以同时打开多个软件&#xff0c;例如同时浏览网页、听音乐、打字等&#xff0c;这是再正常不过的事情。但仔细想想&#xff0c;为什么计算机可以同时运行这么多软件呢? 这就涉及计算机中的两个名词&#xff1a;多进程和多线程。 同样&#xf…