
C语言
du7793202641
这个作者很懒,什么都没留下…
展开
-
初学c语言--Linux下的gets命令,对n个数的顺序排列 计算字符串里的单词数 n个数里取m的方法 杨辉三角
Linux下用gets命令会得到警告 ,但对编译并没有影响(计算字符串里的单词数)避免警告可以使用fgets 例子 fgets(str ,1024,stdin)stdin表示键盘输入。对n个数的顺序排列 数组的值可以写1024,要求使用if语句输入n的值小于1024n个数里取m的排列 m个for循环 简化得下次想到了再发,杨辉三角原创 2016-10-27 22:54:58 · 459 阅读 · 0 评论 -
求1000到10000的可逆素数
可逆素数:一个数字将其各位顺序相反构成的反序数同样是素数原创 2016-11-16 21:34:23 · 2380 阅读 · 0 评论 -
用辗转相除法求最大公约数和最小公倍数 并用这求两个分数间的大小
求最大公约数和最小公倍数原创 2016-11-17 21:20:34 · 691 阅读 · 0 评论 -
避免野指针的方法--养好良好的编程习惯
首先 我们需要来了解什么是野指针:未初始化的指针,系统给了一个随机地址 导致了内存泄露的错误 这也是最常见的段错误之一。避免野指针的方法最好就是养成良好的编码习惯:1: 当指针没有指向的时候 令其指向空 char *p = NULL;2:当向指针指向的空间赋值时,注意检查有无分配空间。 *ptr = malloc(100)=malloc(sizeof(char)*10原创 2016-11-14 21:31:44 · 325 阅读 · 0 评论 -
对malloc rolloc calloc的用法以及区别
在防止野指针时候 我们有用到过malloc来给指针分配空间 下面了解m r c的用法以及区别 z转载出处:http://blog.youkuaiyun.com/wjy2016/article/details/51944926malloc()用法:需要包含头文件:#include函数声明:void *malloc(unsigned size);说明:malloc 向转载 2016-11-18 21:32:11 · 582 阅读 · 0 评论 -
对数组名与指针的认识
char *p 这里的*与char一样 定义了变量p为字符型指针。printf(%s“,*p); 这里的* 称之为间接运算符 不过我个人更喜欢称呼为 取值运算符*p:找到p变量里保存的地址对应的内存空间。p++:对p对应的内存空间的值加1。(*p)++:对p指向的内存空间的值加1。*(ptr + i)=ptr[i]; 运算符[] = *() 不过值得注意的是 等式两边虽然成立原创 2016-11-15 18:18:05 · 289 阅读 · 0 评论 -
函数的一些小知识
当我们在调用函数时候我们应该知道系统一共进行了哪些操作1.通过函数名找到函数的入口地址(函数名是一个指针常量 保存函数的地址)2.给形参分配空间3.传值:把实参变量对应空间的值传递给形参变量的对应空间4.执行函数体语句5.函数返回值并释放空间所以我们在写函数时候都应该注意 不能通过函数形参来改变实参的值 那么当我我们想要修改的时候 就应该传实参变量对应的空间的地址原创 2016-11-21 23:25:02 · 324 阅读 · 0 评论 -
关键字的作用
1.我们知道局部变量是存放在栈区的,如果用static修饰的话 ,变量就会存放在静态数据区,生命周期延长到了整个程序执行结束。那么修饰的是全局变量呢? 这个和修饰函数名时作用一致,只能在本文件中访问不能再其他文件中访问,函数只能在本文中被调用,不能再其他文件中调用。2.那么又有了一个问题 如果我想调用不是在本文件内声明的变量或者函数该怎么办 ? 应该用extern修饰,表示该函数或原创 2016-11-23 21:41:50 · 648 阅读 · 0 评论 -
对复合数据类型的细节了解
1 结构体作用:在编程中我们经常要传送的不是简单的字节流(char型)而是多种数据结合起来的一个整体,其表现形式是一个结构体注意事项:在结构体中定义多个数据类型时 ,如果最大的数据类型>=4字节 统一以“字”为对齐,struct node{ char a; int b; char c; };struct node link;int coun原创 2016-11-24 23:28:40 · 399 阅读 · 0 评论 -
宏定义与条件编译的用处
#define 定义宏 #undef 取消已定义的宏 宏定义常量与命令可以避免幻数 在宏定义命名时候应该尽量清楚表明其用途。函数型宏定义的有点:尽管其和真正的函数相比有很多缺点,但只要小心使用还是会显著提高代码的执行效率,毕竟省去了分配和释放栈帧,传参,传返回值等一系列工作原创 2016-11-25 22:39:32 · 3137 阅读 · 1 评论 -
typedef与#define的区别
#define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错。也许您已经注意到#define 不是语句 不要在行末加分号,否则 会连分号一块置换。typedef是在编译时处理的。它在自己的作用域内给一个已经存在的类型一个别名。举个例子:typedef (int *) pint;原创 2016-12-21 17:22:56 · 334 阅读 · 0 评论 -
求20000以内的自守数
25的平方为625 76的平方为5776 9376的平方为87908376很明显我们不能在算出结果后截取相应的位数 同样的 我们也不需要每个乘数的积 只需要相应位数即可原创 2016-11-12 21:39:41 · 3268 阅读 · 0 评论 -
scanf的一些小细节
格式字符串格式字符串的一般形式为: %[*][输入数据宽度][长度]类型其中有方括号[]的项为任选项。各项的意义如下。1) 类型表示输入数据的类型,其格式符和意义如下表所示。格式字符意义d输入十进制整数o输入八进制整数x输入十六进制整数u输入无符号十进制整数f或e转载 2016-11-11 21:37:49 · 714 阅读 · 0 评论 -
C语言初学--对全局变量和局部变量的理解
首先 在这之前我们应该要知道进程虚拟空间: 系统程序中访问的内存地址不是实际的物理内存地址,而是一个虚拟地址,然后由操作系统将这个虚拟地址映射到适当的物理内存地址上。系统给了我们4个g的虚拟地址空间 其中一个1个g给了内核 3个g给了我们用户 而这三个g我们分为四个区1 栈空间: 这里面有局部变量 函数形参 自动变量 、(这个是由系统管理 并且先进来的后出去 ,简称先进后出)2堆空间:原创 2016-11-10 22:13:03 · 499 阅读 · 0 评论 -
C语言初学----对圆 y=x^2 以及两者共存图像的输出 对于任意一个数 求出最大公约数
对圆的输出(1)对y=x^2的输出(2)共存(3)公约数(4)问题 如何求高次方的后三位数原创 2016-10-25 22:01:11 · 719 阅读 · 0 评论 -
初学c语言--对正余弦函数的编写
正余弦函数同时显示 余弦函数} 正弦函数原创 2016-10-24 21:16:13 · 3573 阅读 · 0 评论 -
C语言初学---对位运算符的认识
位与运算: “&”是双目运算符 其功能是参与运算的两个数字对应的二进制位相与 ,只有对应的两个二进制均为1时 结果位才为1 ,否则为0 ,参与运算的数以补码方式出现例如 9 & 5 0000 1001 & 0000 0101 结果为 0000 0001应用: (1)清0特定位 (2)某数中指定位 位或运算:"|" 双目运算符 其功能是参与运算的两个数字对应的二进制位或 ,原创 2016-11-07 22:04:14 · 563 阅读 · 0 评论 -
C语言初学--对变量的认识
变量类型:int - 4字节(1字节=8bit) short -2字节 float -4字节 double -8字节 char -1字节 (任意类型)* - 4字原创 2016-11-05 22:01:11 · 347 阅读 · 0 评论 -
c语言初学---函数的嵌套调用 递归调用
函数的内嵌函数的递归原创 2016-10-31 21:48:17 · 2093 阅读 · 3 评论 -
数值函数指针变量的认识
int a;整形变量aint *a; 整形指针变量aint **a;整形指针的指针变量int a[10];;整形数组int *a[10];整形指针数组int (*a)[10];整形数组指针变量int (*a)(int); 函数指针变量int (*a[10])(int);函数指针数组int * ( * ( *a )( int ))[10]; 函数指针变量,指向一个形原创 2016-10-30 20:41:55 · 318 阅读 · 0 评论 -
对i++和++i的理解
i++ 先使用后增加++i 先增加后使用实际上这我们需要对这两句话做点补充 先使用等到语句结束时候再增加 对++i同样是这样 我们最熟悉的结束标志莫过于“;”了不过还有其他两种 “,’” 与 函数的括号举几个简单的例子;简单的定义一个变量 i = 2;num = (i++)+(i++)+(i++)+(i++); 这时候 num = i + i+ i +i =8原创 2016-11-06 22:03:39 · 623 阅读 · 0 评论 -
初学c语言---上下对称图,n!的末尾0的个数, 高次方的后三位数,
上下对称图n!的末尾0的个数高次方的后三位数问题 杨辉三角的输出原创 2016-10-26 22:22:57 · 815 阅读 · 0 评论 -
c语言初学--计算字符串中数字的最大长度并提取 以及输入两个子串 提取分别以这为开头和结尾的字符串
计算字符串中数字的最大长度并提取提取以输入子串为开头和结尾的字符串原创 2016-11-08 21:03:20 · 1820 阅读 · 0 评论 -
c语言初学-- 反序数 对称数
原创 2016-11-09 22:29:31 · 3878 阅读 · 0 评论 -
对单词的逆序
以i from shanghai为例 输出 shanghai from i#include #define MAX_SIZE 1024void reverse_string(char *src, int len){ int i; char temp; for(i = 0; i < len / 2; i++) { temp = *(src原创 2016-12-21 17:39:12 · 497 阅读 · 0 评论