首页 > 其他分享 >c语言基础

c语言基础

时间:2022-08-19 00:13:51浏览次数:64  
标签:insert BSTNode 语言 int 基础 return NULL root

int* 与 int *

int* a, b, c; 的实际含义是:创建一个int型指针a和两个int型变量b,c。
int *a, *b, *c;的意思是:创建三个int型指针 a,b,c
int *a, b, c;的意思和 第一个相同
建议不要使用第一种

函数 &传递

void m(int &k){  //这里的k和n指向的内存一样  并没有复制n的值存在新地方
    k = 10;
}
int main(){
    int n = 5;
    m(n);
    cout<<n; //n=10
    return 0;
}

二叉搜索树的插入

#include<bits/stdc++.h>
using namespace std;
int ans = 0;
struct BSTNode{
    BSTNode* lchild;
    BSTNode* rchild;
    int data;
};
int insert(int k,BSTNode* &T){ //注意这里是&
    if(T==NULL){
        T = (BSTNode*)malloc(sizeof (BSTNode));//修改数据也会改变T->left或者T->right
        T->rchild = T->lchild =NULL;
        T->data = k;
        return 1;
    }
    if(T->data==k) return 0;
    if(k<T->data) return insert(k,T->lchild);
    else return insert(k,T->rchild);
}
void inorder(BSTNode* T){
    if(T==NULL) return;
    inorder(T->lchild);
    cout<<T->data<<" ";
    inorder(T->rchild);
}
int main(){
    BSTNode* root = NULL;//分配一块空间存指针类型
    insert(5,root);
    insert(3,root);
    insert(1,root);
    insert(6,root);
    insert(7,root);
    inorder(root);
    return 0;
}

标签:insert,BSTNode,语言,int,基础,return,NULL,root
From: https://www.cnblogs.com/cyfuture/p/16600605.html

相关文章

  • Java基础语法(一)
    Java基础语法(一)一、注释注释并不会被执行,是给写代码的人看的,书写注释是一个很好的习惯!1、单行注释//单行注释:注释一行文字2、多行注释/*注释文字*/3、文档注释......
  • c语言中使用冒泡排序法对数组进行排序
     001、#include<stdio.h>#defineNUMBER5voidpsort(intx[],intn){inti,j;for(i=0;i<n-1;i++)......
  • 学习笔记-涛讲F#(基础)
    目录简介类型推导多个输入参数的函数定义单位偏函数常量也是函数返回值(unit与ignore)函数串联实现“开方乘十”使用管道符|>元组(参数加上括号)F#中的类记录复制和更新记录表......
  • c语言中函数式宏和逗号运算符
     001、#include<stdio.h>#definexxx(str){putchar('\a');puts(str);}//函数使用;花括号内为完整的代码块,末尾有分号,因此main函数ti第一个if之后不再加......
  • c语言中函数式宏
     001、#include<stdio.h>#definediff(x,y)(x-y)##函数式宏,diff函数中的参数,将按照(x-y)在函数中展开intmain(void){inta,b;doublem,n......
  • 数据库的基础知识和基本操作
    一.初识数据库中表的数据类型数值:1.int2.金融行业中:decimal类型字符串1.varchar可变字符串常用变量2.text大型文本保存大文本 时间日期j......
  • 基础知识与解压缩命令
    目录结构白色:表示普通文件蓝色:表示目录绿色:表示可执行文件红色:表示压缩文件浅蓝色:链接文件红色闪烁:表示链接的文件有问题黄色:表示设备文件灰色:表示其它文件打......
  • java基础01
    注释单行注释://注释内容多行注释:/*(回车)​注释​*/文档注释:/**​*可执行的注释​......
  • java基础01
    注释单行注释://注释内容多行注释:/*(回车)注释*/文档注释:/***可执行的注释*/数据类型整数byte:-128-127short:-32768-32767int:-1247483648-2147483647long......
  • 关于C语言的基本语法知识
    由“HelloWorld”这样一个基本代码,我了解了一些C语言的基础语法知识,接下来是我对其的粗略理解。首先,我了解到了每一个C语言代码都有一个起始入口,它便是主函数main,我们......