20230403华清远见作业
1.进制转换
#ifndef __HEAD_H_
#define __HEAD_H_#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef int datatype;
typedef struct node
{union {int len;datatype data;};struct node *next;
}*linkstack;
linkstack create_head();
linkstack create_node();
int linkstack_head(linkstack l,datatype e);
int delete_head(linkstack l);
void output(linkstack l);
linkstack free_sapce(linkstack l);
#endif
#include "head.h"int main(int argc, const char *argv[])
{int num=0;int n=0;linkstack p=create_head();printf("请输入要转换的进制数:");scanf("%d",&num);printf("请输入要转换的进制:");scanf("%d",&n);while(num){linkstack_head(p,num%n);num=num/n;}output(p);puts("");free_sapce(p); return 0;
}
#include "head.h"
/** function: 在堆区申请空间* @param [ in]* @param [out]* @return 成功返回地址,失败返回NULL*/
linkstack create_head()
{ linkstack l=(linkstack)malloc(sizeof(struct node));if(l==NULL)return NULL;l->len=0;l->next=NULL;return l;
}
/** function: 创建普通节点* @param [ in] * @param [out] * @return 成功返回地址,失败返回NULL**/
linkstack create_node()
{linkstack p=(linkstack)malloc(sizeof(struct node));if(p==NULL)return NULL;p->data=0;p->next=NULL;return p;
}
/** function: 头插* @param [ in] 栈 插入的值* @param [out] * @return 成功返回0,失败返回-1*/
int linkstack_head(linkstack l,datatype e)
{if(l==NULL){printf("插入失败\n");return -1;}linkstack s=create_node();if(s==NULL)return -1;s->data=e;s->next=l->next;l->next=s;l->len++;return 0;
}
/** function: 头删* @param [ in] 链栈* @param [out] * @return 成功返回0,失败返回-1*/
int delete_head(linkstack l)
{if(l==NULL||l->len==0){printf("删除失败\n");return -1;}linkstack q=l->next;
// printf("出栈的数据是:%d\n",q->data);l->next=q->next;free(q);q=NULL;l->len--;return 0;
}
/** function: 遍历输出* @param [ in] 链栈* @param [out] * @return 无返回值*/
void output(linkstack l)
{puts("");linkstack p=l;while(p->next){p=p->next;printf("%d",p->data);}puts("");
}
/** function: 空间释放* @param [ in] 链栈* @param [out] * @return 成功返回地址*/
linkstack free_sapce(linkstack l)
{if(l==NULL)return NULL;int n=l->len;for(int i=0;i<n;i++){delete_head(l);}free(l);l=NULL;return l;
}
20230403华清远见作业相关推荐
- 20230330华清远见作业
作业1:单链表的按位置修改 思路:参数:L pos e 1,判断链表是否存在 2,判断链表是否为空 3,判断位置是否合法 4,找到pos起名字p 5. 修改p的数据域:重新赋值 作业2:单链表的按元素 ...
- 20230322华清远见作业
作业1:定义有参函数实现,主调函数中输入两个数据,通过函数调用,交换该两个变量的值,主调函数输出交换后的结果 #include<stdio.h> #include<stdlib.h& ...
- 20230317华清远见作业
作业1:输出从起始值到终止值之间,所有能被3或5整除的所有数,起始值和终止值由用户输入 #include<stdio.h> #include<string.h> #includ ...
- 20230319华清远见作业
作业1:输出从起始值到终止值之间,所有能被3或5整除的所有数,起始值和终止值由用户输入 #include<string.h> #include<stdio.h> #includ ...
- 20230327华清远见作业
1.在堆区申请2个字符类型的大小为20字节的空间. 1> 定义函数,实现在堆区申请空间 2> 定义函数,输入两个字符串 3> 定义函数,计算两个字符串的长度[非函数] sizeof_ ...
- 20230329华清远见作业
#include "head.h"int main(int argc, const char *argv[]) {seqlist *list =create();//循环在尾部插入 ...
- 20230223华清远见作业
仿照str系列函数,完成自定义的mystrlen .mystrcmp.mystrcpy,mystrcat. mystrlen #include<stdio.h> #include<s ...
- 20230331华清远见作业
#include "head.h" int main(int argc, const char *argv[]) {doublelink l =create_head();int ...
- 阶段总结:华清远见毕业总结
在毕业之际,苦于自身水平不足,不够完善的技能不足以在就业形势严峻的今天找到一份适合的工作,由于我是一个电子信息工程专业出身的学生,在学校里通过专业选修等课程接触到了单片机和嵌入式等课程,从而产生了一点 ...
最新文章
- 编写一个程序,打印输入中各个字符出现频度的直方图
- 杨百万建议股民可以从以下几个方面进行
- lua 获取时分秒_PMON学用命令
- 深入理解connect by
- python合并数组输出重复项_python进行数组合并的方法
- 程序显示文本框_vb程序语言题库
- VMware View:VMware 专为 Kindle Fire 打造的视图客户端
- flash乱码解决方案
- 按需使用vue-cli-plugin-element插件
- 【Jquery练习】tab栏切换
- 阿里P9手写的Java核心开发手册(2022版)覆盖P5到P8所有技术栈
- HyperV虚拟机连接时主机无法连接网络 2022-06-13
- 某易—将军令动态刨析算法(1)
- Geohash应用——附近乡镇信息挖掘(提升检索召回与准确)
- 微信小程序轮子 - 调起摄像头拍照并在页面预览(身份证拍照 / 人像拍照等等)
- Unity 3D 一些对Scene窗口的调整以及摄像头的调整技巧
- 转载 电容的ESR
- 如何防止跨站点脚本攻击
- 我说CMMI2.0之过程管理
- sql语句优化技巧 sql 语句技巧
热门文章
- 基于PHP+小程序(MINA框架)+Mysql数据库的共享停车位预约小程序系统设计与实现
- linux 用户及密码
- html 美化table,纯CSS美化HTML的Table
- matlab mupad打开,MATLAB–Mupad 初学者(一)~(三)
- 分布式缓存中间件:Redis
- Linux搭建GitLab私有仓库,并内网穿透实现公网访问
- centos7环境变量设置
- 利用python进行数据分析在线阅读-利用python进行数据分析--(阅读笔记一)
- 虚拟现实在招聘中的应用
- removing-删除