高级语言讲义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

相关文章

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

Python中你不知道的gzip高级用法分享

《Python中你不知道的gzip高级用法分享》在当今大数据时代,数据存储和传输成本已成为每个开发者必须考虑的问题,Python内置的gzip模块提供了一种简单高效的解决方案,下面小编就来和大家详细讲... 目录前言:为什么数据压缩如此重要1. gzip 模块基础介绍2. 基本压缩与解压缩操作2.1 压缩文

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

Java中的for循环高级用法

《Java中的for循环高级用法》本文系统解析Java中传统、增强型for循环、StreamAPI及并行流的实现原理与性能差异,并通过大量代码示例展示实际开发中的最佳实践,感兴趣的朋友一起看看吧... 目录前言一、基础篇:传统for循环1.1 标准语法结构1.2 典型应用场景二、进阶篇:增强型for循环2.

Go语言代码格式化的技巧分享

《Go语言代码格式化的技巧分享》在Go语言的开发过程中,代码格式化是一个看似细微却至关重要的环节,良好的代码格式化不仅能提升代码的可读性,还能促进团队协作,减少因代码风格差异引发的问题,Go在代码格式... 目录一、Go 语言代码格式化的重要性二、Go 语言代码格式化工具:gofmt 与 go fmt(一)

使用Python进行GRPC和Dubbo协议的高级测试

《使用Python进行GRPC和Dubbo协议的高级测试》GRPC(GoogleRemoteProcedureCall)是一种高性能、开源的远程过程调用(RPC)框架,Dubbo是一种高性能的分布式服... 目录01 GRPC测试安装gRPC编写.proto文件实现服务02 Dubbo测试1. 安装Dubb

Go语言中泄漏缓冲区的问题解决

《Go语言中泄漏缓冲区的问题解决》缓冲区是一种常见的数据结构,常被用于在不同的并发单元之间传递数据,然而,若缓冲区使用不当,就可能引发泄漏缓冲区问题,本文就来介绍一下问题的解决,感兴趣的可以了解一下... 目录引言泄漏缓冲区的基本概念代码示例:泄漏缓冲区的产生项目场景:Web 服务器中的请求缓冲场景描述代码

Go语言如何判断两张图片的相似度

《Go语言如何判断两张图片的相似度》这篇文章主要为大家详细介绍了Go语言如何中实现判断两张图片的相似度的两种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 在介绍技术细节前,我们先来看看图片对比在哪些场景下可以用得到:图片去重:自动删除重复图片,为存储空间"瘦身"。想象你是一个

Go语言中Recover机制的使用

《Go语言中Recover机制的使用》Go语言的recover机制通过defer函数捕获panic,实现异常恢复与程序稳定性,具有一定的参考价值,感兴趣的可以了解一下... 目录引言Recover 的基本概念基本代码示例简单的 Recover 示例嵌套函数中的 Recover项目场景中的应用Web 服务器中