第三节 了解指针链表后的尝试 150206118

在了解了学生信息管理的基础上,我大概知道哪里可以下手修改。并且付诸了实践。

实践证明我改成了饭店管理系统是可行的,不过其中涉及的一个算法稍作了调整。

其次,为了使程序更丰富。我想为该程序添加点东西。

因为系统整体是完整的,不可能做大幅度的修改,于是我想到了稍微的调整,比如某个地方的算法。又或者增加一个新的函数。

经过查找,我觉得可以加入一个用户密码的函数。在进行网页搜索之后发觉有部分函数过于复杂,偶然的情况下我发现讲义里面有,而且简单。于是我现学现用,决定放入程序中。

然而刚开始,直接复制粘贴是没用的,无法运行用户的函数。后来我发现我没有在主函数中添加运行。我复制粘贴的不过是做了一个函数的设计或者说声明。

在修改后,程序成功运行,并且能进入界面使用。

修改如下:

//进入菜单函数【我在菜单函数前面先编写了用户密码函数】

void check()

{

char userName[5];/*用户名*/

char userPWD[5];/*密码*/

int i,sum;

for(i = 1; i < 4; i++)

{

/*用户名和密码均为abcde;*/

printf("   用户名和密码均为abcde\n\n");

printf("\n       请输入您的用户名:");

gets(userName);

printf("\n       请输入您的密码:");

gets(userPWD);

if ((strcmp(userName,"abcde")==0) && (strcmp(userPWD,"abcde")==0))/*验证用户名和密码*/

{

printf("用户名和密码正确,显示主菜单");

return;        //【正确,返回显示功能界面进入正常程序】

}

else

{

if (i < 3)

{

printf("用户名或密码错误,提示用户重新输入");

printf("用户名或密码错误,请重新输入!");

}

else

{

printf("连续3次输错用户名或密码,退出系统。");

printf("您已连续3次将用户名或密码输错,系统将退出!");

exit(1);

}

}

}

}

//【】然后我在主程序做了修改】

{

//显示菜单、【只是做了一个函数的运行】

check();

Welcome();

时间: 2024-12-19 09:26:42

第三节 了解指针链表后的尝试 150206118的相关文章

26、输入一个链表,反转链表后,输出链表的所有元素。

输入一个链表,反转链表后,输出链表的所有元素. 思路:  ListNode next = null;//用来保存待反序的第一个节点(head 和 next节点) ListNode pre = null;//用来保存已经反序的第一个结点 next = head.next;//首先记录当前节点的下一个节点,(保存起来) //先用next保存head的下一个节点的信息,保证单链表不会因为失去head节点的原next节点而就此断裂 head.next = pre;//让当前节点指向前一个节点,因为要反序

C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com

原文:C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 本文由 arthinking 发表于315 天前 ⁄ itzhai.com原创文章 ⁄ C语言 ⁄ 评论数 3 ⁄ 被围观 1,775 views+ 指针数组: 在一个数组中,如果它的元素全部都是指针类

N15_反转链表后,输出新链表的表头。

题目描述 输入一个链表,反转链表后,输出新链表的表头. package new_offer; /** * 输入一个链表,反转链表后,输出新链表的表头. * @author Sonya *思路:遍历头插法. */ public class N15_ReverseList { public ListNode ReverseList(ListNode head) { if(head==null)return null; if(head.next==null)return head; ListNode

C语言复习——指针 链表 与 文件操作

刚刚进入大二,准备开始学习C++,对大一所学的C语言一次练习,正好也是赶上老师布置的任务,用C语言写一个  销售管理系统  ,就尽可能的把所学的都用上,也就是结构,指针,文件操作,还有数据结构,本次加入了链表. 用两个函数 Load_LinkList() 和 Save_LinkList() 让链表与文件操作结合,除了打印函数,其他都是在内存中操作链表,这样写更有条理,在创建链表时没有采用书上的用一个中间变量引导,并插入到结点前面,而是直接在链表尾的next申请内存,便于理解,操作也方便. /*首

【日常学习】【非指针链表】Uva11988 - Broken Keyboard (a.k.a. Beiju Text)题解

这道题目拖了好几天,因为鄙人有两大天敌--链表和树TUT看了这个题材知道原来链表可以不用指针写,不过原理也是一样的,相当于是用数组模拟了个链表而不实用结构体,结构体里的指针就换成了两个变量cur和last了.这道题目本来测出来非常奇怪和合因为UVA AC HDU TLE SPOJ RE我正在奇怪,才发现同名的不同题目有三道TUT 题目的详解已经写在了注释里,上代码: #include<cstdio> #include<cstring> using namespace std; co

反转链表-输入一个链表,反转链表后,输出链表的所有元素。

1 /* 2 struct ListNode { 3 int val; 4 struct ListNode *next; 5 ListNode(int x) : 6 val(x), next(NULL) { 7 } 8 };*/ 9 class Solution { 10 public: 11 ListNode* ReverseList(ListNode* pHead) { 12 ListNode* res=NULL; 13 ListNode* pre=NULL; 14 if(pHead==NU

输入一个链表,反转链表后,输出链表的所有元素

import com.doubleLinkedList.Node; public class ReverseList { public Node ReverseList1(Node head){ Node current=head; Node prevnode=null; Node newhead=null; if(current==null){ throw new NullPointerException("no node this listnode!"); } while(curr

指针、链表的原理和各类操作相关心得以及学生信息管理系统

伴随着学期末的到来,C语言程序设计这门课也接近尾声.经过前两次的教学,我们对C语言也有了深刻的了解,学习的内容也不断的加深.这次我们就学习了C语言程序设计里应用最广泛,也是最难学习的知识--链表和指针的应用. 关于指针和链表这两个的应用和上次的管理系统有着直接的关系,没有添加链表和指针的管理系统无法做到精确的查找.数据存储方面也显得不方便.所以指针和链表的作用能够直接指向你所需要的数据地址,使程序更加完善.这次我就利用指针的应用制作了一个管理员工工资等信息的程序. §1 指向结构体变量的指针变量

马兴150809305C语言的指针、链表的原理和各类操作

一.指针 1.运用指针 什么是指针?什么是内存地址?什么叫做指针的取值?指针是一个存储计算机内存地址的变量.从指针指向的内存读取数据称作指针的取值.指针可以指向某些具体类型的变量地址,例如int.long和double.指针也可以是void类型.NULL指针和未初始化指针. 根据出现的位置不同,操作符 * 既可以用来声明一个指针变量,也可以用作指针的取值.当用在声明一个变量时,*表示这里声明了一个指针.其它情况用到*表示指针的取值.&是地址操作符,用来引用一个内存地址.通过在变量名字前使用&