高级语言讲义2024软专(仅高级语言部分)

2024-03-11 05:28

本文主要是介绍高级语言讲义2024软专(仅高级语言部分),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.实现快速排序,简要分析时间复杂度、空间复杂度。

#include <stdio.h>void swap(int* a, int* b) {int temp = *a;*a = *b;*b = temp;
}void printArray(int *arr, int size) {for (int i = 0; i < size; i++)printf("%d ", arr[i]);printf("\n");
}int partition(int *arr, int low, int high) {int pivot = arr[low];int i = low + 1;int j = high;  while (1) {while (arr[i] < pivot && i <= high)i++;while (arr[j] > pivot && j >= low + 1)j--;if (i >= j)break;swap(&arr[i], &arr[j]);}swap(&arr[low], &arr[j]);return j; 
}void quickSort(int *arr, int low, int high) {if (low < high) {int pivot_index = partition(arr, low, high);quickSort(arr, low, pivot_index - 1);quickSort(arr, pivot_index + 1, high); }
}int main() {int arr[] = {10, 7, 8, 9, 1, 5};int size = sizeof(arr) / sizeof(arr[0]);printf("Original Array: ");printArray(arr, size);quickSort(arr, 0, size - 1);printf("Sorted Array: ");printArray(arr, size);return 0;
}

2.int len( char*s),实现该递归函数,计算字符中最后一个单词的长度,若不存在单词{返回0。(字符串由大小写字母、空格组成)

#include <stdio.h>int strlen(char *s) {if(*s=='\0')return 0;elsereturn strlen(s+1)+1;
}int del(char *s) {if(*s==' ')return del(s-1)+1;return 0;
}int getlen(char *s) {if(*s==' ')return 0;elsereturn getlen(s-1)+1;
}int main() {char str[] = "Hellmo Wiorld";printf("%d",getlen(str+strlen(str)-1-del(str+strlen(str)-1)));return 0;
}

3.职工信息:工号、姓名、年龄。定义结构体从键盘读入n个职工信息,结点顺序与读入一致。

#include <stdio.h>
#include <stdlib.h>typedef struct node {int num;char name[20];int age;struct node *next;
} node;struct node* create(int n) {struct node* head=NULL;struct node* p1,*p2;for(int i=0; i<n; i++) {p1=(struct node *)malloc(sizeof(struct node));scanf("%d%s%d",&p1->num,&p1->name,&p1->age);if(i==0)head=p1;elsep2->next=p1;p2=p1;}p2->next=NULL;return head;
}

4.续写,将链表中工号重复的结点删去,并写入" worker.txt"文件中

#include <stdio.h>
#include <stdlib.h>typedef struct node {int num;char name[20];int age;struct node *next;
} node;void removeDuplicates(struct node* head) {FILE *file;if((file=fopen("worker.txt","w"))==NULL)printf("open error");if (head == NULL)return;struct node* current = head;while (current->next != NULL) {if (current->num == current->next->num) {struct node* temp = current->next;current->next = temp->next;free(temp);} elsecurrent = current->next;}while(head!=NULL) {fprintf(file,"%10s %d %d",head->name,head->age,head->num);head=head->next;}fclose(file);
}

这篇关于高级语言讲义2024软专(仅高级语言部分)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/796787

相关文章

JavaScript中的高级调试方法全攻略指南

《JavaScript中的高级调试方法全攻略指南》什么是高级JavaScript调试技巧,它比console.log有何优势,如何使用断点调试定位问题,通过本文,我们将深入解答这些问题,带您从理论到实... 目录观点与案例结合观点1观点2观点3观点4观点5高级调试技巧详解实战案例断点调试:定位变量错误性能分

从基础到高级详解Python数值格式化输出的完全指南

《从基础到高级详解Python数值格式化输出的完全指南》在数据分析、金融计算和科学报告领域,数值格式化是提升可读性和专业性的关键技术,本文将深入解析Python中数值格式化输出的相关方法,感兴趣的小伙... 目录引言:数值格式化的核心价值一、基础格式化方法1.1 三种核心格式化方式对比1.2 基础格式化示例

GO语言短变量声明的实现示例

《GO语言短变量声明的实现示例》在Go语言中,短变量声明是一种简洁的变量声明方式,使用:=运算符,可以自动推断变量类型,下面就来具体介绍一下如何使用,感兴趣的可以了解一下... 目录基本语法功能特点与var的区别适用场景注意事项基本语法variableName := value功能特点1、自动类型推

GO语言中函数命名返回值的使用

《GO语言中函数命名返回值的使用》在Go语言中,函数可以为其返回值指定名称,这被称为命名返回值或命名返回参数,这种特性可以使代码更清晰,特别是在返回多个值时,感兴趣的可以了解一下... 目录基本语法函数命名返回特点代码示例命名特点基本语法func functionName(parameters) (nam

Android协程高级用法大全

《Android协程高级用法大全》这篇文章给大家介绍Android协程高级用法大全,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友跟随小编一起学习吧... 目录1️⃣ 协程作用域(CoroutineScope)与生命周期绑定Activity/Fragment 中手

Go语言连接MySQL数据库执行基本的增删改查

《Go语言连接MySQL数据库执行基本的增删改查》在后端开发中,MySQL是最常用的关系型数据库之一,本文主要为大家详细介绍了如何使用Go连接MySQL数据库并执行基本的增删改查吧... 目录Go语言连接mysql数据库准备工作安装 MySQL 驱动代码实现运行结果注意事项Go语言执行基本的增删改查准备工作

深度解析Python yfinance的核心功能和高级用法

《深度解析Pythonyfinance的核心功能和高级用法》yfinance是一个功能强大且易于使用的Python库,用于从YahooFinance获取金融数据,本教程将深入探讨yfinance的核... 目录yfinance 深度解析教程 (python)1. 简介与安装1.1 什么是 yfinance?

Go语言使用Gin处理路由参数和查询参数

《Go语言使用Gin处理路由参数和查询参数》在WebAPI开发中,处理路由参数(PathParameter)和查询参数(QueryParameter)是非常常见的需求,下面我们就来看看Go语言... 目录一、路由参数 vs 查询参数二、Gin 获取路由参数和查询参数三、示例代码四、运行与测试1. 测试编程路

Go语言使用net/http构建一个RESTful API的示例代码

《Go语言使用net/http构建一个RESTfulAPI的示例代码》Go的标准库net/http提供了构建Web服务所需的强大功能,虽然众多第三方框架(如Gin、Echo)已经封装了很多功能,但... 目录引言一、什么是 RESTful API?二、实战目标:用户信息管理 API三、代码实现1. 用户数据

MySQL数据类型与表操作全指南( 从基础到高级实践)

《MySQL数据类型与表操作全指南(从基础到高级实践)》本文详解MySQL数据类型分类(数值、日期/时间、字符串)及表操作(创建、修改、维护),涵盖优化技巧如数据类型选择、备份、分区,强调规范设计与... 目录mysql数据类型详解数值类型日期时间类型字符串类型表操作全解析创建表修改表结构添加列修改列删除列