c语言
文章平均质量分 68
xiahuayong
30之前一定要去内蒙、青海和西藏
展开
-
顺序栈
3.1 顺序栈的建立1.建立一个字符栈,从键盘输入若干个字符,以回车键结束,实现元素入栈操作;然后依次输出栈中的字符元素,实现元素出栈操作2.实验要求和说明参考程序中,由InitStack_Seq函数分配一个指定大小的字符数组空间,在分配成功地情况下,从键盘输入若干个字符,实现进栈操作。然后依次输出栈中元素的值,其输出顺序恰与输出顺序相反。注意入栈,出栈时栈顶指针TOP的不同变化及栈空的判断条件。建立一个头文件SeqStack.h,包含顺序栈的定义、初始化等。3.参考程序// 头文件SeqStac原创 2021-04-12 22:37:07 · 1240 阅读 · 0 评论 -
单链表合并+双向链表+双向循环链表
2.6单链表的合并1.建立两个带头结点的有序单链表La,Lb,利用La,Lb的结点构造一个新的单链表Lc,使得合并后的Lc表仍然有序。2.实验要求及说明程序需要设立三个指针:Pa,pb,pc。其中pa,pb分别指向La,Lb中当前待比较、准备插入Lc表的结点;pc指向Lc表中当前最后一个结点,pc的初值指向La表的头结点。La表和Lb表的长度是隐含的,当pa或pb为空时,表示La表或Lb表扫描完毕。两个单链表合并前、后状态示意图如下:3.参考程序#include <stdio.h>#原创 2021-04-12 22:32:45 · 1333 阅读 · 0 评论 -
结构体、用户自定义数据类型与共用体
结构体、用户自定义数据类型与共用体结构体结构体关键字:student#include <stdio.h>#include <string.h>int main(){ struct student{ int SID; char name[20]; float math; }; struct student st1={191011,"Wang Lin",92.0f}; struct student ast[10]={ {181021,"Zhang K原创 2020-11-27 22:25:17 · 439 阅读 · 0 评论 -
编译预处理
编译预处理不带参数的宏定义:#define 标识符 字符串 // 标识符==符号常量代参数的宏定义::#define 宏名(参数列表) 字符串编译预处理:文件包含#include <stdio.h> //标准库函数可以放在<>当中#include “HelloWorld.cpp” //双引号多一步,会先会在当前目录下找,所以用户自己写的最好用双引号。#include <stdio.h>#define PI 3.1415926 //不带参#defi原创 2020-11-26 22:51:18 · 123 阅读 · 0 评论 -
动态分配内存
指针动态内存分配指针初始化的作用:让指针指向某个给定区域的起始地址。所有指针必须初始化后才能引用:如果一个指针没有初始化,那么指针指向的内存可能存在其他程序残存的数据或者其他什么东西,当我们对指针赋值的时候,指针就把那个原数据当做所指向的地址,把值赋值给这个未知的地址有各种未知的可能。动态内存分配函数:malloc() 函数格式:void *malloc(unsigned size)返回值:成功返回一个void型指针;失败返回空值#include <stdio.h>#inclu原创 2020-11-23 16:04:42 · 274 阅读 · 0 评论 -
C语言指针
C语言指针文章目录C语言指针//指针基本概念//指针的运算//指针与一维数组//指针基本概念#include <stdio.h>/*p是一个指向整形变量的指针。// * --> 取值运算符& --> 取地址运算符p == &a*p == a*/int main(){int a,b,c,i;int *p;int arr[]={1,2,3,4}; //数组的名字代表着起始地址a=10;b=20;c=30;p=&a;/原创 2020-11-03 16:36:13 · 118 阅读 · 0 评论