首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言小程序:通讯录

1.实现功能 本文将采用C语言来实现一个简单的通讯录,要求功能如下 //实现一个通讯录 //1.可以保存100个人的信息 //2.增加人的信息 //3.删除指定联系人的信息 //4.查找 //5.修改...//6.排序 //7.显示所有联系人 下面我们来一步步实现 2.实现细节与具体思路 1.主程序设计 首先,设计一个主程序来对于通讯录进行一个整体的设计,它的功能我们用函数来进行包装,这样可以增加代码的可读性...,我们知道,数组在内存里是连续存储的,我们可以利用它的下标,用它的下一个值赋给它来达到删除的效果,这里要循环赋值,否则会出现两个一样值,从需要删除的值的下标到最后,删完后,别忘了给sz(数据的个数)-1...7.排序 这里先介绍一下qsort函数的用法  它的功能是对所传入的元素进行排序,要传入的参数是需要比较元素的起始地址,比较的个数,所比较元素的单个大小,以及一个比较函数....比较函数这里有说法,我们来看看 大概意思是,如果p1的值大于p2就返回大于0的值,反之返回小于0的值,相等则返回0,通常的通讯录是按照名字排序(字典序),所以这里要比较字符串的大小,不能直接相减,得用strcmp

16910

C语言的基本语法单位

基本符号 按照C99的规定,C语言的基本符号集包括: (1) 26个大写字母 (2) 26个小写字母 (3) 10个数字字符 (4) 29个图形字符:!...关键字 关键字是程序设计语言保留下来并被赋予特定语法含义的单词或单词缩写,用来说明某一固定含义的语法概念,程序中只能使用关键字的规定作用。...(类似于自然语言中具有特定含义的动、名词) C99 中的37个关键字,常用的有: 与数据类型有关的: char int float double signed unsigned short...long void struct union typedef enum sizeof 与存储类别有关的: auto extern register static 与程序控制结构有关的: do while...(类似于自然语言中各种事物的名字) C语言规定:标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。

80920
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    c语言指针的基本使用

    函数指针 指针(pointer)是C语言中一个重点和难点,以下是对其基本使用的一些总结,适合入门的同学。除了是对自己的学习的总结之外,也希望能对大家有所帮助。 1....指针变量的定义和初始化 与C语言其他变量类似,指针也是一种变量,只不过它与其他变量不同,一般变量是直接包含了一个特定的值,而指针是包含了一个变量的值所在的地址,也就是说,指针存储了一个变量的地址,间接地指向一个值...(以下用了c++语法,可不用在意,只需看sizeof部分) #include using namespace std; int main(){ int i; int array...指针表达式和指针运算 可以对指针进行加减运算,但与一般的加减运算不同,对指针的加减 n 会加减指针所指向的类型所占用的字节数的 n 倍。...这种运算的作用在于对数组进行遍历等操作,离开数组对指针进行这样的操作是没有太大意义的。 指针与指针之间的运算也是同样的道理。

    91410

    C 语言小知识

    C 语言小知识 堆与栈(Heap and Stack) 堆相对比较容易理解, 就是计算机剩余的内存, 可以通过 malloc 函数访问获取堆内存。...每次调用 malloc , 操作系统使用内部函数为你注册分配一块内存, 并返回指向它的指针。 当你使用完之后, 要用 free 函数将它返回给操作系统以便其它程序可以使用。...如果没有这么做的话, 将会导致你的程序出现内存泄漏。 栈是一个特殊的内存区域, 存储函数创建的本地变量。 它的工作原理是每个函数的参数被压入堆栈,并在函数内使用。...这是真正的栈道数据结构, 后进先出。 对于本地变量也是相同的。 栈的好处是简单, 当函数退出时, C 编译器将这些变量推出栈道进行清理。 这样可以简单的避免栈道上的变量有内存泄漏。...(StackOverflow)并导致程序退出。

    98520

    小波去噪程序c语言,小波去噪c语言程序

    大家好,又见面了,我是你们的朋友全栈君。 小波去噪c语言程序 1、小波阈值去噪理论小波阈值去噪就是对信号进行分解,然后对分解后的系数进行阈值处理,最后重构得到去噪信号。...该算法其主要理论依据是:小波变换具有很强的去数据相关性,它能够使信号的能量在小波域集中在一些大的小波系数中;而噪声的能量却分布于整个小波域内。...因此,经小波分解后,信号的小波系数幅值要大于噪声的系数幅值。可以认为,幅值比较大的小波系数一般以信号为主,而幅值比较小的系数在很大程度上是噪声。...小波阈值收缩法去噪的具体处理过程为:将含噪信号在各尺度上进行小波分解,设定一个阈值,幅值低于该阈值的小波系数置为0,高于该阈值的小波系数或者完全保留,或者做相应的收缩(shrinkage)处理。...最后将处理后获得的小波系数用逆小波变换进行重构,得到去噪后的信号. 2、小波阈值去噪c语言程序此程序是用于信号处理分析,突出奇异值的前段处理,对信号进行小波包分解,用C语言实现的,仅供参考。

    3.5K10

    C语言基本的窗口开发

    ,这个栈空间的清理者, // 在其他代码中 __stdcall, APIENTRY都是一样,可以转到定义查看, // //句柄:一个数 ;作用:窗口的唯一标志 int WINAPI WinMain(...WS_EX_TOPMOST, //dwExStyle 窗口附加属性:显示在最顶层 "FirstWin", // lpClassName 窗口类的名字, 给系统看的,同前 "俺的第一个窗口",...//lpWindowName 窗口显示的名字 WS_OVERLAPPEDWINDOW, //dwStyle 窗口创建风格 可以一个或多个用 | 连接 100, //x 指定窗口的显示的x坐标,...NULL,// 指定窗口句柄 选择处理那个窗口的消息 NULL/非NULL的区别,全部句柄接受 0, 0 //设定处理消息的范围 这里为全部范围 )) { TranslateMessage...效果如下 俺的第一个窗口创建成功!!!✌

    1.2K10

    c语言gdi绘图_程序设计的基本步骤是

    大家好,又见面了,我是你们的朋友全栈君。 本文将实现对基本图形的绘制: windows程序画图,大体上有3种方法: (1)你告诉系统点的坐标和颜色,系统通过SetPixel来画。...(3)windows提供了一些基本图形绘制的函数供我们直接调用,比如Rectangle绘制矩形,Ellipse绘制椭圆,RoundRect绘制圆角椭圆。...(3)程序运行的结果,使得对角线被椭圆遮挡住了。如果改变顺序,最后画对角线,就没有遮挡发生。这说明,画出的图,是“实心的”,不能简单的理解为只有轮廓。...对以上基本功能实现的代码如下: #include #include #define NUM 1000 #define TWOPI (2*3.14159) LRESULT...PostQuitMessage(0); return 0; } return DefWindowProc(hwnd, message, wParam, lParam); } 发布者:全栈程序员栈长

    56710

    C语言——文件的基本操作

    C语言中文件的基本操作包括:文件的打开、文件的关闭以及文件的输入和输出。除了标准的输入、输出文件外,其它的文件都必须先打开在使用,使用后必须关闭该文件。...文件指针 文件指针是一个指向文件有关信息的指针,这些信息包括文件名、状态和当前位置,他们保存在一个机构体变量中。在使用文件时需要在内存中为其分配空间,用来存放文件的基本信息。...C语言中规定该结构体类型为FILE型。...关闭文件的目的是为了防止因为没有关闭 文件而造成的数据流失。 文件的读写 打开文件后,就可以对文件进行读写操作,C语言中提供了多种文件操作函数,接下来我们具体的看一下。..._CRT_SECURE_NO_WARNINGS #include int main() { FILE* fp; char ch; if ((fp = fopen("c:

    95110

    C语言队列的基本操作

    本篇介绍一下编程中比较重要的一个数据结构队列,队列有个很显著的标志,对其中的数据是先进先出,如果是顺序存储结构可以说就是一个受限的数组,对链式存储结构就只能说是符合先进先出的规则了,这种数据结构在我们真正的编程中还是相当常用的...开始 顺序队列的操作 首先我们来介绍一下顺序存储结构下的队列的定义和基本操作 添加适当的头文件,定义一个顺序存储数据结构, 这里需要添加头文件和定义一个队列的顺序数据结构 #include <stdio.h...i + 1); } for (i = 0; i < 10; i++) { DeleteQueue(&q, &a[i]); printf("%d\n", a[i]); } } 都是很基本的操作...,在顺序队列中,可以从数组的方式去理解,这样将会让你理解起来更简单 链式队列的操作 首先我们来介绍一下顺序存储结构下的队列的定义和基本操作 添加适当的头文件,定义一个队列链式存储数据结构, 这里需要添加头文件和定义一个队列的链式存储数据结构...,只要理解了先进先出的逻辑,和了解一下指针操作就可以很容易的写出队列的节本操作。

    78031

    C语言实现简单的图书馆小程序

    目的:练习指针和结构体的基本使用。   题目:构建一个“图书馆”小程序(library),让用户将书籍的基本信息都录入到里面,最后一并打印出录入的所有书籍。 题解 需要创建那些量?   ...(YES)——>初始化struct Book* library[] ——>用户输入…——>emsp;请问是否需要录入图书信息(NO)——>打印图书信息——>释放内存(方便下一次存储) 程序设计   为小程序创建一个新的工程...:陈逸鹤 请输入售价:49.00 请输入出版日期:2017-5-25 请输入出版设:清华大学出版社 请问是否需要录入图书信息(Y/N):Y 请输入书名:零基础入门学习C语言--带你学习带你飞 请输入作者...书名:程序员的自我修养 作者:陈逸鹤 售价:49.00 出版日期:2017-5-25 出版社:清华大学出版社 书名:零基础入门学习C语言--带你学习带你飞 作者:小甲鱼 售价:79.00 出版日期:2019...写在后面   麻雀虽小五脏俱全,写写这个小程序练习了指针变量和结构体的部分使用,一步一步来,总有收获…

    61310

    C++语言的基本语法

    想掌握一门编程语言,第一步就是需要熟悉基本的环境,然后就是最重要的语法知识。 C++ 程序可以定义为对象的集合,这些对象通过调用彼此的方法进行交互。...例如:一只狗的状态 - 颜色、名称、品种,行为 - 摇动、叫唤、吃。对象是类的实例。 类 - 类可以定义为描述对象行为/状态的模板/蓝图。 方法 - 从基本上说,一个方法表示一种行为。...即时变量 - 每个对象都有其独特的即时变量。对象的状态是由这些即时变量的值创建的。...完整关键字介绍可查阅:C++ 的关键字(保留字)完整介绍 一、C++ 程序结构 让我们看一段简单的代码,可以输出单词 Hello World。...#include using namespace std; // main() 是程序开始执行的地方 int main() { cout << "Hello World

    8010

    【c语言】小程序游戏——飞机游戏(一)

    下面来介绍一个简单的游戏,其中用到的c语言知识属于基础内容,所以特别容易上手 ~~~~~~~飞机游戏~~~~~~~~~ 首先按照常理我们知道,肯定要在界面上绘制出一个飞机,...我们知道,在窗口的坐标系原点是在窗口左上角的 所以我们如果想在这个坐标系里面的某个点上画出一个飞机,那么它的坐标系应该就是这样的 根据前一篇文章的介绍,如果转化为c...语言的话,就需要:X0既是打印出X0个“\n”,Y0既是打印出Y0个空格!!!!...由结果可知,程序是会一直往下打印“*”号,没有终点 这是为什么呢? 大神们都知道,编译器是从上往下一直执行代码的,所以打印出来的结果自然也是一直往下打印的啦!...在接下来,我们还需要对“飞机”这个类添加属性,然后增加敌机、发射激光、计算分数等,详细请看小程序游戏——飞机游戏(二) 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn

    2.5K30

    C语言if语句的基本用法

    =0); c,浮点数无法与 0 比较,只能用近似的值比较;例: 1e-6 等于1×10的-6次方可以看成0来使用; 2.用于单分支选择结构; 3.如含有交叉关系,使用并列的if语句; 例1:输出两个整数中的最大值...a(+ - * /)b:"); scanf("%f%c%f",&a,&ch,&b); switch(ch) { case '+': printf("%f%c%f=%.2f\n",...a,ch,b,a+b);/*%.2f表示精度,可以理解为保留两位小数*/ break; case '-': printf("%f%c%f=%.2f\n",a,ch,b,a-b); break...\n"); } } 扩展 5.1:C语言中输出格式%m.nf的意思 m:表示宽度 .n:表示精度 假设, i=10.1; printf("%5.2f",i); 输出结果为 10.10(m=5,其中空格占...发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/144383.html原文链接:https://javaforall.cn

    2.5K10

    程序设计语言概述_c语言程序设计基本概念

    这与我们的需求差很远(例如一个教务管理系统。) 3. 为什么类型申明在C语言中要与控制流隔离开来? 4. 现在主流语言最基本的元素是? 5. 有没有语言它的类型结构,在运行时也可以改变? 动态性?...头文件,库 总之,C语言并没有比汇编多了新的特性,它只是把汇编的繁琐操作抽象出来,让编译器完成,减轻程序员负担。 编译器的作用是?(减少程序员负担) 1....打个比方,一只“程序猫”在黑布笼子里,在里面喵喵的叫,无法通过它的叫声来判断它是“汇编猫”还是“C语言猫”。 从效率上来讲,C的多余代价在哪里? 1. 编译的时间 2....模块的堆栈操作 总之,经过优化的C程序执行码与汇编效率几乎相同。 因为从理论上来说,C并没有引入运行时的新机制。 我理解的C语言只是一种汇编的宏而已。...因为在编译时,具体的类型信息,要转化成地址偏移,然后替换控制流中的类型变量。 现在主流语言最基本的元素是? 控制流 与 类型系统。 有没有语言它的类型结构,在运行时也可以改变?

    1.4K40

    7个C语言小程序让你快速入门程序世界

    相信这么努力的你 已经置顶了我 老九学堂 你身边的IT导师 今天,上班/上课第二天 是时候拼命开始学习了 今天大雄就分享10个 比较基础的C语言的小程序 希望给初学C语言的小伙伴们一点点帮助 ?...("small to big: %d %d %d\n", x, y, z); system("pause"); return 0; } 6、题目:用*号输出字母C的图案。...程序分析:可先用*号在纸上写出字母C,再分行输出。...程序源代码: #include #include int main(void) { printf("Hello C-world!...如果小伙伴刚刚开始学习编程语言 大雄给大家推荐下面的教材 这三本教材是公认的语言学习权威书籍 再配上老九学堂的学习视频 对小伙伴们的编程语言基础学习 会起到事半功倍的效果 ? ? ?

    1.1K30

    C语言入门小程序-猜数字

    学习编程注重实践,不少同学书看了好几章,等动手开始自己写的时候,发现还是不知从何下手。今天,我们以一个猜数字的小程序为例,带大家了解一下。 首先,看下题目: ?...这个游戏大家应该不陌生,留点时间大家思考下怎么来用C语言编程来实现。我们先来介绍下VC++6.0运行C语言程序的基本操作过程。 ?...创建好工程的界面: ? 第二步,创建 .c 文件,就是C语言代码源文件。...如上图,基本框架先写好,然后往中间填写代码。第一行预处理命令,包含对应的库(比如,要用到三角函数、开方这些函数,要包含对应的math.h库;使用字符串相关函数,要包含string.h库)。...关于main函数介绍,C语言程序从main函数开始到main函数结束,参考之前的文章。

    2.4K30
    领券