【C语言(一)】教程文章相关的互联网学习教程文章

C语言:二十五 函数中的static例子

static int j;int k=0;void fun1(void){static int i=0; //注释①i++;}void fun2(void){j=0; //注释②j++;}int main(){for(k=0; k<10; k++){fun1();fun2();}return 0;}问:i=? j=?解析:注释①:static int i=0;这个定义与普通的int i=0不同,加了static后,这个i会存放在静态数据区,只能被初始化一次,在第一次调用fun1()时,创建i并初始化,之后再调用fun1()时,发现这个i已存在,那么这句就会被忽略掉。注释②:j=0;这就是普通...

C语言学习笔记:14_内部函数和外部函数

/** 14_内部函数和外部函数.c** Created on: 2015年7月5日* Author: zhong*/#include <stdio.h> #include <stdlib.h> /*** 所谓的外内部函数:是根据函数能否被其他源谁的调用来区分的;* 一:内部函数:在函数定义时前面加个static (c语言的这个静态函数和java的static方法就差太远了)* 如果一个函数只能被本文件中其它函数调用,它称为内部函数,又叫静态函数* 只需要在定义和函数时在前面加个 static关键字即可,这...

《数据结构与算法分析——c语言描述》读后笔记【代码】

数据是稳定的(即不允许插入操作和删除操作)在任意时刻,算法都能对它已经读入的数据给出子序列问题的答案,具有这种特性的算法叫做联机算法(online algorithm)分治(divide-and-conquer)策略:其想法是把问题分成两个大致相等的子问题,然后递归地对他们求解,这是“分”部分。“治”阶段将两个子问题的解合并到一起并可能再做些少量的附加工作,最后得到整个问题的解。当编写递归例程的时候,关键是要牢记递归地四条基本法则:基准...

数据结构--单链表 C语言【代码】【图】

//单链表基本操作 1 #include <stdio.h>2 3 #include <stdlib.h>4 5 6 typedef struct _NODE7{8int data;9struct _NODE *pNext;10 }NODE,*PNODE;11 12 PNODE Create_List(void)13{14int len = 0;15int data,i = 0;16 PNODE pHead = NULL;17 pHead = (PNODE)malloc(sizeof(NODE));18 PNODE pTail = pHead;19 pTail->pNext = NULL;20 21if(pHead == NULL)22 {23 printf("内存分配失败!\r\n");24 }...

C语言 重写C语言库strchr字符串操作函数

#include<stdio.h> #include<string.h>const char *my_strchr(char const *str,int ch) {int i=0;for(;str[i]!='\0';i++){if(str[i]==ch){return str+i;}}return NULL; }int main() {char ch='c';char src[]="abcdecf";char const *ret;ret=my_strchr(src,ch);printf("%s\n",ret);return 0; } 原文:http://blog.csdn.net/u013265552/article/details/44994089

C语言的常量【代码】

1 #include<stdio.h>2 3int main(void)4{5constint AMOUNT = 100; //定义一个常量,不能被修改,可以赋初值;常量的标识符建议使用大写字母 6int price = 0; //初始化 7 8 printf("请输入金额(元):");9 scanf_s("%d", &price); //只有按下回车键后,输入的数才能被程序读到;输入必须按照字符串中的内容1011int change = AMOUNT - price; 1213 printf("找您%d元。\n",change); 1415return0; 16 } 原文:ht...

C语言第二次作业【代码】

题目 6-7 删除字符串中数字字符 1.设计思路第一步:观察题意了解各个参数与所需函数在题目中的意义; 第二步:设计算法编写函数,让函数的功能实现题目中所需的功能; 第三步:运行程序检测是否错误。2.实验代码void delnum(char *s) { int i=0,j=0; while(*(s+i)!=‘\0‘){if(!(*(s+i)<=‘9‘&&*(s+i)>=‘0‘)){*(s+j)=*(s+i);j++;}i++;}*(s+j)=‘\0‘; } 题目6-8 统计子串在母串出现的次数 1 设计思路 第一步:观察题意了解各个参...

004_stdc_C语言基础【代码】【图】

回顾:C语言中的数据(基本)根据读写属性 常量/变量变量的类型 确定该变量的字节数,取值范围,数据的存储格式数据类型,是指在数据结构定义上的数据的集合以及基于该集合的运算-------------------- C语言中的运算(基本) 运算符 sizeof 计算变量/类型/常量/表达式 字节数 sizeof(int); sizeof(2+3);--------------- char c = 0;//1 int i = 0;//4 i = c; 赋值运算时两边类型不一致,小字节变量赋...

使用c语言调用python小结

最近在做一个漏洞展示平台,攻击实现部分使用python实现,c语言实现部分使用libcli库做一个类似telnet的东东,回调函数run的时候调用python模块。针对c调用python,做个了小demopython模块:demo.pydef print_arg(str):print strdef add(a,b):print 'a=', aprint 'b=', breturn a + bclass Class_A:def __init__(self):print "init"def fun(self, str):print 'hello', strreturn strclass dedecms_get_webshell:def __init__(self)...

基于C语言的算法总结(不定时更新)【代码】

这篇博客我准备写一些我见过的算法,虽然现在我见过的还很少,但我相信会越来越多,方便日后自己查阅好了 开始了求解最大子序列和的最有效的算法 1int MaxSubsequenceSum(constint A[], int N)2{3int ThisSum, MaxSum, j;4// 定义本次循环的和 与 最大和 为0 5 ThisSum = MaxSum = 0; 6// 循环求和 7for (j = 0; j < N; j++)8 {9 ThisSum += A[j]; 10// 判断本次的和与最大和的大小,如果本次和比最大和大,把本次和的值...

策略设计模式与c语言中的函数指针【代码】

在C语言中有一个非常重要的概念-函数指针,其最重要的功能是实现回调函数(指函数先在某处注册,而它将在稍后某个需要的时候被调用)在java语言中没有指针的概念,但是可以利用接口和指针实现类似的功能,具体而言,应先定义一个接口,最后把这个实现类的一个对象作为参数传递给调用程序,调用程序通过这个参数来调用指定的函数,从而实现回调函数(这里接口就像是注册的地方,实现类就是“注册人”,当实现类作为形参时,就是在需...

C语言的一个关键字——static【图】

Static在C语言里面有两个作用,第一个是修饰变量,第二个是修饰函数。1、Static修饰变量按照作用范围的不同,变量分为局部变量和全局变量。如果用static修饰变量,不论这个变量是全局的还是局部的都是存储在静态数据区。下面分开来讲:¨ 如果用static修饰全局变量,我们称其为静态全局变量。我们用static修饰全局变量的主要目的就是:使得其作用域仅限于变量被定义的文件中(即从变量定义处到本文件结尾处),其它文件不论...

C语言 · 企业奖金发放【代码】

算法提高 企业奖金发放 时间限制:1.0s 内存限制:512.0MB   企业发放的奖金根据利润提成。利润低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万元到60万元之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%;高于100万元时,超过100万元的部分按1%提成...

C语言中带参数的宏【代码】

带参数的宏定义有如下的格式:【#define 指令----带参数的宏】 #define 标识符(x1,x2,……,xn)其中 x1,x2,……xn是标志符(宏的参数)注意:在宏的名字和括号之间必修没有空格。如果有空格,预处理会认为是在定义一个简单的宏,其中(x1,x2,……,xn)是替换列表的一部分当预处理器遇到一个带参数的宏,会将定义存储起来以便以后使用。在后面的程序中,如果任何地方出现了标识符(y1,y2……,yn)格式的宏调用(其中y1,y2, ……...

c语言学习目标

(1)数据结构、算法的概念和作用结构化程序设计的方法、三种基本结构程序流程图和 N-S流程图(2)C程序的一些特点、标识符和关键字的概念.编译、 链接和运行的概念及应用C程序开发流程、 学会至少一种环境下的 C程序开发(3)常量、变量的概念和使用如何声明和定义变量printf函数和scanf函数的使用(4)整型、字符型、浮点型数据类型的使用使用printf函数和scanf函数处理各种类型致据使用typedef自定义数据类型限定词const 和 volatile的使...