c语言函数

C语言博客作业04--数组

对着背影说爱祢 提交于 2019-12-04 18:39:46
0.展示PTA总分(0----2) 1.本章学习总结(2分) 1.1 学习内容总结 数组中如何查找数据,有哪些做法: 1.顺序查找法:假设要查找的数为x,在数组a[100]中逐个查找,立一个flag=0没找到的标志,在for循环中确定flag的值,if(flag==1)找到,if(flag==0)未找到。详细步骤:课本例7-3。 2.二分查找法:前提是数组元素必须是有序的。假设要查找的数为x,在数组b[100]中查找,定义mid为数组的中间位置,用while(low<=high)通过x与b[mid]的大小比较,决定左移或者右移或者找到x直接输出(也可以使用int型函数,返回结果)。详细步骤:课本例8-8。 数组中如何插入数据,怎么做,可以写个伪代码或动态图展示方法: 详细可看pta题集:一维数组7-3简化的插入排序 数组中如何删除数据,这个有多种做法,请一一展示。 详细可看pta一维数组7-6 数组元素的删除 数组中目前学到排序方法,主要思路? 1.选择排序: 课本例7-5 2.冒泡排序: 课本例8-5 数组做枚举用法,有哪些案例? 判断回文数:课本7-11,pta二维数组7-5 找鞍点,7-6阅览室。 哈希数组用法,目前学过哪些案例,举例展示。 字符数组:pta字符数组7-1 判断E-mail地址是否合法 、7-2 IP地址转换 、7-3 字符串转换成十进制整数 。 1.2

C语言I博客作业08

梦想的初衷 提交于 2019-12-04 14:14:06
C语言I博客作业05 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/9827 这个作业在那个具体方面帮助我实现目标 学会如何会C语言编写 参考文献 C语言程序设计 1.PTA实验作业(20分/题) 1.1水仙花数判断 *本题要求实现一个函数,判断任一整数是否为水仙花数(必须是三位数,且数的每一位上数字的立方和与数本身相等)。例如153=1^3+5^3+3^3=1+125+27=153,而1或155则不是水仙花数。如果是水仙花数,则函数返回1,否则返回0. 1.1.1数据处理 数据表达:用了变量n .t . s 。 数据处理:表达示S+=pow(n%10,2) 函数参数:请明确说明主调函数与被调函数的名称,被调函数的类型,实参与形参的名称、类型。 1.1.2实验代码截图 1.1.3 造测试数据 参数N 是否为水仙花数 233 否 250 否 264 否 276 否 1.1.4 PTA提交列表及说明。 1.部分正确:3测试点输出问题,第七行缺少 * 7 * 7+ 7。 2.编译错误::3测试点输出问题,第七行还缺少 7+ 7。 3.部分正确:3测试点输出问题,第七行还缺少 + 7。 1.2 使用函数验证哥德巴赫猜想 本题要求实现一个判断素数的简单函数

C语言中的.h和.c文件

送分小仙女□ 提交于 2019-12-04 11:45:50
1.h为头文件,.c为源文件,其实两者都是代码,没有实质性的区别,只是后缀不一样,是一种编程规范,主要是为了解决定义与调用之间的混乱。 2.h文件一般写一些函数声明、宏定义、结构体等内容;c文件是程序文件,内含程序的具体实现。 3.当一个.c文件需要使用另一个.c文件中的某个函数,此时只需要包含头文件,即可调用另一个.c文件中的函数 4.头文件和源文件区分开来有几点好处:一是头文件用于共享,只用一句#include就能包含;二是如果你要写库,又不想暴露你的源代码,可以把.c编译成.obj或是.lib发给别人用,然后把.h作为使用说明书。 来源: https://www.cnblogs.com/kerwincui/p/11860170.html

c语言中qsort函数的使用、编程中的一些错误

寵の児 提交于 2019-12-04 11:14:07
qsort()函数: 功能:相当于c++sort,具有快排的功能,复杂度的话nlog(n) 注:C中的qsort()采用的是快排算法,C++的sort()则是改进的快排算法。两者的时间复杂度都是nlogn,但是实际应用中,sort()一般要快些,建议使用sort()。 头文件:stdlib.h 用法: void qsort(void* base,size_t_num,size_t_width,int(__cdecl*compare)(const void*,const void*));   参数:1、待排序数组,排序之后的结果仍放在这个数组中      2、数组中待排序元素数量      3、各元素的占用空间大小(单位为字节)    4、指向函数的指针,用于确定排序的顺序(需要用户自定义一个比较函数) 1、对int类型进行排序: 代码: 1 #include<stdio.h> 2 #include<stdlib.h> 3 int num[100]; 4 int cmp_int(const void* aa,const void* bb) 5 { 6 int* a=(int*)aa; 7 int* b=(int*)bb; 8 return *a-*b; 9 } 10 int main() 11 { 12 int i; 13 num[1]=3; 14 num[2]=2; 15 num

《C语言进阶剖析》课程目录

北城以北 提交于 2019-12-04 09:35:48
第1课 - 基本数据类型 第2课 - 有符号数与无符号数 第3课 - 浮点数的秘密 第4课 - 类型转换 第5课 - 变量属性 第6课 - 分支语句 第7课 - 循环语句 第8课 - goto和void分析 第9课 - const 和 volatile分析 第10课 - struct和union分析 第11课 - enum, sizeof, typedef 分析 第12课 - 注释符号 第13课 - 接续符和转义符 第14课 - 单引号和双引号 第15课 - 逻辑运算符分析 第16课 - 位运算符分析 第17课 - ++和--操作符分析 第18课 - 三目运算符和逗号表达式 第19课 - 编译过程简介 第20课 - 链接过程简介 第21课 - 宏定义与使用分析 第22课 - 条件编译使用分析 第23课 - #error 和 #line 使用分析 第24课 - #pragma 使用分析 第25课 - # 和 ## 操作符使用分析 第26课 - 指针的本质分析 第27课 - 数组的本质分析 第28课 - 指针和数组分析(上) 第29课 - 指针和数组分析(下) 第30课 - C语言中的字符串 第31课 - 字符串典型问题分析 第32课 - 数组指针和指针数组分析 第33课 - main函数与命令行参数 第34课 - 多维数组和多维指针 第35课 - 数组参数和指针参数分析 第36课 -

C语言存储类别和链接

拈花ヽ惹草 提交于 2019-12-04 05:30:40
目录 C语言存储类别和链接 存储类别 存储期 五种存储类别 存储类别和函数 分配内存malloc()和free() C语言存储类别和链接 ​ 最近详细的复习C语言,看到存储类别的时候总感觉一些概念模糊不清,现在认真的梳理一下。C语言的优势之一能够让程序员恰到好处的控制程序,可以通过C语言的内存管理系统指定变量的作用域和生存周期,实现对程序的控制。 存储类别 基本概念 对象 :在C语言中所有的数据都会被存储到内存中,被存储的值会占用一定的物理内存,这样的一块内存被称为 对象 ,它可以储存一个或者多个值,在储存适当的值时一定具有相应的大小。(C语言对象不同于面向对象语言的对象) 标识符 :程序需要一种方法来访问对象,这就需要声明变量来实现,例如: int identifier = 1 ,在这里 identifier 就是一个标识符,标识符是一个名称并遵循变量的命名规则。所以在本例中 identifier 即是C程序指定硬件内存中的对象的方式并提供了存储的值的大小“1”。在其它的情况中 int * pt 、 int arr[10] ,pt就是一个标志符,它指定了储存地址的变量,但是表达式*p不是一个标志符,因为它不是一个名称。 arr 的声明创建了一个可容纳10个 int 类型元素的对象,该数组的每一个元素也是一个对象。 作用域 :描述程序中可访问标识符的区域

嵌入式c语言编码规范

风流意气都作罢 提交于 2019-12-03 23:58:48
学习嵌入式的同学应该首先掌握嵌入式编码规范,这样才能更好的嵌入式系统。 下面就从这几个方面讲解一下嵌入式c编码规范。 注释风格、排版风格、头文件风格、变量定义、宏定义、函数 1 注释风格 1.1 注释的原则是有助于对程序的阅读和理解,注释不宜太多也不能太少。注释语言必须准确、易懂、简洁,没有歧义性。 1.2 程序文件头部代码应进行注释。注释必须列出:版权说明、版本号、生成日期、作者、内容、功能、与其他文件的关系、修改日志等。头文件的注释中还应有函数功能简要说明。 /* * Copyright(C), 2007-2008, Red Hat Inc. // 版权声明 * File name: // 文件名 * Author: // 作者 * Version: // 版本 * Date: // 完成日期 * Description: // 描述本文件的功能,与其他模块的关系 * Function List: // 主要函数的列表,每条记录应包括函数名及功能简要说明 * History: // 修改历史,包括每次修改的日期、修改者和修改内容简述 */ 1.3 函数头部应进行注释,列出函数的功能、输入参数、输出参数、返回值、调用关系等。 /* * Function: // 函数名称 * Description: // 函数功能、性能等的描述 * Calls: // 被本函数调用的函数清单 *

C语言函数指针基础

回眸只為那壹抹淺笑 提交于 2019-12-03 17:30:00
  C语言函数指针基础   本文写的非常详细,因为我想为初学者建立一个意识模型,来帮助他们理解函数指针的语法和基础。如果你不讨厌事无巨细,请尽情阅读吧。   函数指针虽然在语法上让人有些迷惑,但不失为一种有趣而强大的工具。本文将从C语言函数指针的基础开始介绍,再结合一些简单的用法和关于函数名称和地址的趣闻。在最后,本文给出一种简单的方式来看待函数指针,让你对其用法有一个更清晰的理解。   函数指针和一个简单的函数   我们从一个非常简单的”Hello World“函数入手,来见识一下怎样创建一个函数指针。      我们定义了一个名为sayHello的函数,它没有返回值也不接受任何参数。当我们在main函数中调用它的时候,它向屏幕输出出”hello world“。非常简单。接下来,我们改写一下main函数,之前直接调用的sayHello函数,现在改用函数指针来调用它。      第二行void (*sayHelloPtr)()的语法看起来有些奇怪,我们来一步一步分析。   1. 这里,关键字void的作用是说我们创建了一个函数指针,并让它指向了一个返回void(也就是没有返回值)的函数。   2. 就像其他任何指针都必须有一个名称一样,这里sayHelloPtr被当作这个函数指针的名称。   3. 我们用*符号来表示这是一个指针,这跟声明一个指向整数或者字符的指针没有任何区别。  

一个C语言程序是由( )组成?

核能气质少年 提交于 2019-12-03 14:20:49
A) 一个主程序和若干子程序组成 B)一个或多个函数组成 C) 若干过程组成 D) 若干子程序组成 正确答案 B 解析 [解析] 一个C源程序是由一个main函数和若干个其他函数组成的。函数是C程序的基本单位,被调用的函数可以是系统提供的库函数,也可以是用户根据需要自己定义的函数。 来源: https://www.cnblogs.com/HGNET/p/11799178.html

C语言存储类别和链接

▼魔方 西西 提交于 2019-12-03 12:11:48
目录 C语言存储类别和链接 存储类别 存储期 五种存储类别 C语言存储类别和链接 ​ 最近详细的复习C语言,看到存储类别的时候总感觉一些概念模糊不清,现在认真的梳理一下。C语言的优势之一能够让程序员恰到好处的控制程序,可以通过C语言的内存管理系统指定变量的作用域和生存周期,实现对程序的控制。 存储类别 基本概念 对象 :在C语言中所有的数据都会被存储到内存中,被存储的值会占用一定的物理内存,这样的一块内存被称为 对象 ,它可以储存一个或者多个值,在储存适当的值时一定具有相应的大小。(C语言对象不同于面向对象语言的对象) 标识符 :程序需要一种方法来访问对象,这就需要声明变量来实现,例如: int identifier = 1 ,在这里 identifier 就是一个标识符,标识符是一个名称并遵循变量的命名规则。所以在本例中 identifier 即是C程序指定硬件内存中的对象的方式并提供了存储的值的大小“1”。在其它的情况中 int * pt 、 int arr[10] ,pt就是一个标志符,它指定了储存地址的变量,但是表达式*p不是一个标志符,因为它不是一个名称。 arr 的声明创建了一个可容纳10个 int 类型元素的对象,该数组的每一个元素也是一个对象。 作用域 :描述程序中可访问标识符的区域。因为一个C变量的作用域可以是块作用域、函数作用域、文件作用域和函数原型作用域。