C语言——从入门到精通,从精通到放弃
2024-10-15 08:19:57
从第一次在CB上运行处 Hello World开始,哈哈哈哈,便开始各种幻想,哈哈哈哈,想着这就入门了,哈哈哈哈,我果然是个天才,哈哈哈哈。
后来啊,if-else语句,for 语句,while语句,等等等等,再到数组函数指针,我以为就只有这些东西,嗯嗯哈哈哈,精通。
excuse me???精什么??什么通??
寒假学结构体链表看了大佬的代码,类似于这种:
typedef struct LNode *PtrToLNode;
struct LNode
{
ElementType Data;
PtrToLNode Next;
};
typedef PtrToLNode Position;
typedef PtrToLNode List; /* 查找 */
#define ERROR NULL
Position Find( List L, ElementType X )
{
Position p = L; /* p指向L的第1个结点 */
while ( p && p->Data!=X )
p = p->Next; /* 下列语句可以用 return p; 替换 */
if ( p )
return p;
else
return ERROR;
} /* 带头结点的插入 */ /*注意:在插入位置参数P上与课程视频有所不同,课程视频中i是序列位序(从1开始),这里P是链表结点指针,在P之前插入新结点 */
bool Insert( List L, ElementType X, Position P )
{
/* 这里默认L有头结点 */
Position tmp, pre; /* 查找P的前一个结点 */
for ( pre=L; pre&&pre->Next!=P; pre=pre->Next ) ;
if ( pre==NULL )
{
/* P所指的结点不在L中 */
printf("插入位置参数错误\n");
return false;
}
else
{
/* 找到了P的前一个结点pre */ /* 在P前插入新结点 */
tmp = (Position)malloc(sizeof(struct LNode)); /* 申请、填装结点 */
tmp->Data = X;
tmp->Next = P;
pre->Next = tmp;
return true;
}
} /* 带头结点的删除 */ /*注意:在删除位置参数P上与课程视频有所不同,课程视频中i是序列位序(从1开始),这里P是拟删除结点指针 */
bool Delete( List L, Position P )
{
/* 这里默认L有头结点 */
Position tmp, pre; /* 查找P的前一个结点 */
for ( pre=L; pre&&pre->Next!=P; pre=pre->Next ) ;
if ( pre==NULL || P==NULL)
{
/* P所指的结点不在L中 */
printf("删除位置参数错误\n");
return false;
}
else
{
/* 找到了P的前一个结点pre */ /* 将P位置的结点删除 */
pre->Next = P->Next;
free(P);
return true;
}
}
由以上条件,立即推,放弃计算机。
最新文章
- CCF 201312-1 出现次数最多的数 (水题)
- 组织http请求
- Linux编程---线程
- 1c19b35b005744d55261682b361804fa 如何破解经过 MD5 算法处理的信息?
- remote: Permission to user_name/Code.git denied to other_user_name. fatal: unable to access 'https://github.com/user_name/Code.git/': The requested URL returned error: 403
- video作为背景全屏铺满问题
- sql查询一个字段多列值合并为一列
- xadmin+django2.0删除用户报错,get_deleted_objects() takes 3 positional arguments but 5 were given
- 常用模块collections
- 创建 elasticsearch 用户
- script 跳出小窗口
- unity3d assetbundle打包策略
- grep 详解
- 51nod 1584加权约数和
- 【spring mvc】springmvc在tomcat中的执行过程
- 一点ExtJS开发的感悟
- leetcode刷刷刷
- mysql pdo事务
- 20155206 2016-2017-2 《Java程序设计》第4周学习总结
- 【转载】关于RenderTarget的注意事项
热门文章
- Timer的缺陷
- codeforce465DIV2——D. Fafa and Ancient Alphabet
- codeforce467DIV2——D. Sleepy Game
- libevent源码深度剖析十二
- weblogic在linux服务器上部署应用
- 35.MID() 函数
- 如何在Django模型中管理并发性 orm select_for_update
- 在IE中检查控件是否安装成功
- JavaEE互联网轻量级框架整合开发(书籍)阅读笔记(2):SSM+Redis概念理解
- 关于Html5中的单选与多选