c语言

C语言I博客作业08

廉价感情. 提交于 2020-03-18 11:52:48
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 C语言I作业008 我在这个课程的目标是 对于学过的内容,可以很熟练的进行编程,而且还可以看懂代码的每一步代表着什么意思,训练自己找错的能力 这个作业在那个具体方面帮助我实现目标 做PTA作业可以巩固学的知识,并且找到自己不足。而且在代码互评环节可以学习到别人的长处 参考文献 百度、《C Primer Plus》第六版,C语言程序设计、PTA常见问题解答 1.PTA实验作业 1.1题目名1 输入一组二进制字符,输出其对应的十进制数。当输入回车键时,输入结束。若输入非二进制字符,输出error input! 1.1.1数据处理 数据表达:运用了字符型数据,定义了number变量,是整型变量 数据处理: 1.1.2实验代码截图 1.1.3造测试数据 输入数据 输出数据 说明 11111111 255 例题数据 34 error input! 例题数据 110111101 455 含有1和0的数字 456 error input! 测试不是二进制的数字 1110 14 随机测试的一个二进制的数字 1.1.4PTA提交列表及说明 1.部分正确:用vs测试,发现如果满足二进制,则答案是正确的;但如果不满足二进制,就会出现一个情况:如果是输入34,输出结果是error input!4,弄了很久,在input后面总会有个数字

用C语言的while循环,打印九九乘法表

被刻印的时光 ゝ 提交于 2020-03-18 10:39:00
某厂面试归来,发现自己落伍了!>>> 用C语言的while循环,打印九九乘法表 用C语言的while循环: #include <stdio.h> int main(void) { int row = 1; while (row <= 9) { int col = 1; while (col <= row) { printf("%d * %d = %d\t", col, row, col * row); col += 1; } printf("\n"); row += 1; } printf("\n"); return 0; 运行结果 1 * 1 = 1 1 * 2 = 2 2 * 2 = 4 1 * 3 = 3 2 * 3 = 6 3 * 3 = 9 1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16 1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25 1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36 1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49 1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4

值得推荐的开源C/C++框架和库

限于喜欢 提交于 2020-03-18 06:03:14
值得学习的C语言开源项目 - 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行。 下载链接: http://home.tiscali.cz/~cz210552/webbench.html - 2. Tinyhttpd tinyhttpd是一个超轻量型Http Server,使用C语言开发,全部代码只有502行(包括注释),附带一个简单的Client,可以通过阅读这段代码理解一个 Http Server 的本质。 下载链接: http://sourceforge.net/projects/tinyhttpd/ - 3. cJSON cJSON是C语言中的一个JSON编解码器,非常轻量级,C文件只有500多行,速度也非常理想。 cJSON也存在几个弱点,虽然功能不是非常强大,但cJSON的小身板和速度是最值得赞赏的。其代码被非常好地维护着,结构也简单易懂,可以作为一个非常好的C语言项目进行学习。 项目主页: http://sourceforge.net/projects/cjson/ - 4. CMockery

C语言中常用的调试宏

荒凉一梦 提交于 2020-03-17 22:46:04
C语言中常用的调试宏 背景 在C语言编写中,经常想因为调试的原因,插入一些临时输出的变量,或者执行一些不必要的指令。 写完之后频繁注释和反注释很耗时间,而且可能会造成不必要的错误。 因此作者采用了宏命令的方式,插入一些调试输出。 代码 // File: debug.c // some debug Macro // #define DEBUG # ifndef DEBUG_PRINT # ifdef DEBUG # define DEBUG_PRINT(fmt, args...) fprintf(stderr, fmt, ## args) # else # define DEBUG_PRINT(fmt, args...) /* Don't do anything in release builds */ # endif # endif //DEBUG_PRINT # ifndef DEBUG_RUN # ifdef DEBUG # define DEBUG_RUN(args) {args ; } # else # define DEBUG_RUN(args...) # endif # endif //DEBUG_RUN 使用方式 将上述代码加入到头文件中。 Gcc编译时加入-DDEBUG定义DEBUG宏 gcc -DDEBUG -o ./a.out 对于DEBUG_PRINT

C语言主要应用领域

假装没事ソ 提交于 2020-03-17 22:26:31
C语言主要应用领域: 一、应用软件 。Linux操作系统中的应用软件都是使用C语言编写的,因此这样的应用软件安全性非常高。 二、服务器端开发 :很多游戏或者互联网公司的后台服务器程序都是基于C++开发的,而且大部分是linux操作系统,所以说,你如果想做这样的工作,需要熟悉linux操作系统及其在上面的开发,熟悉数据库开发,精通网络编程。 三、对性能要求严格的领域 。一般对性能有严格要求的地方都是用C语言编写的,比如网络程序的底层和网络服务器端底层、地图查询等。 四、系统软件和图形处理 。C语言具有很强的绘图能力和可移植性,并且具备很强的数据处理能力,可以用来编写系统软件、制作动画、绘制二维图形和三维图形等。 例如虚拟现实,这个领域一直在发展,目前VR眼镜比较火,需要大量基于这些的C++开发。 五、数字计算 。相对于其他编程语言,C语言是数字计算能力超强的高级语言。 六、嵌入式设备开发 。手机、PDA等时尚消费类电子产品相信大家都不陌生,其内部的应用软件、游戏等很多都是采用C语言进行嵌入式开发的。 七、游戏软件开发 。游戏大家更不陌生,很多人就是由玩游戏而熟悉了计算机。利用C语言可以开发很多游戏,比如推箱子、贪吃蛇等。 此外,C语言做电子设备的比较多,比如嵌入式行业就用的C语言,什么手机软件了,硬件驱动了,网络安全方面的也有,如防火墙之类的,还有现在比较流行的数字机顶盒,路由器

C语言printf语法

北城余情 提交于 2020-03-17 19:43:25
1.调用格式为 printf("< 格式化字符串 >", < 参量表 >); 其中格式化字符串包括两部分内容 : 一部分是正常字符 , 这些字符将按原 样输出 ; 另一部分是格式化规定字符 , 以 "%" 开始 , 后跟一个或几个规定字符 , 用来确定输出内容格式。 参量表是需要输出的一系列参数 , 其个数必须与格式化字符串所说明的输出 参数 个数一样多 , 各参数之间用 "," 分开 , 且顺序一一对应 , 否则将会出现意想 不到的错误。 2.格式化字符 %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数 %x, %X 无符号以十六进制表示的整数 %0 无符号以八进制表示的整数 %g 自动选择合适的表示法 说明 : (1). 可以在 "%" 和字母之间插进数字表示最大场宽。 例如 : %3d 表示输出 3 位整型数 , 不够 3 位右对齐。 %9.2f 表示输出场宽为 9 的浮点数 , 其中小数位为 2, 整数位为 6, 小数点占一位 , 不够9 位右对齐。 %8s 表示输出 8 个字符的字符串 , 不够 8 个字符右对齐。 如果字符串的长度、或整型数位数超过说明的场宽 , 将按其实际长度输出。 但对浮点数 , 若整数部分位数超过了说明的整数位宽度 , 将按实际整数位输出 ;

C语言printf-(转自shiney)

痴心易碎 提交于 2020-03-17 19:40:30
1.调用格式为 printf("<格式化字符串>", <参量表 >); 其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出; 另一部分是格式化规定字符, 以"%"开始, 后跟一个或几个规定字符, 用来确定输出内容格式。参量表是需要输出的一系列参数, 其个数必须与格式化字符串所说明的输出参数个数一样多, 各参数之间用","分开, 且顺序一一对应, 否则将会出现意想不到的错误。 2.格式化字符 %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数 %x, %X 无符号以十六进制表示的整数 %0 无符号以八进制表示的整数 %g 自动选择合适的表示法 说明: (1). 可以在"%"和字母之间插进数字表示最大场宽。 例如: %3d 表示输出3位整型数, 不够3位右对齐。 %9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6, 小数点占一位, 不够9位右对齐。%8s 表示输出8个字符的字符串, 不够8个字符右对齐。 如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。 但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出; 若小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。另外, 若想在输出值前加一些0,

C语言printf

◇◆丶佛笑我妖孽 提交于 2020-03-17 19:40:15
1.调用格式为 printf("<格式化字符串>", <参量表 >);   其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出; 另一部分是格式化规定字符, 以"%"开始, 后跟一个或几个规定字符, 用来确定输出内容格式。参量表是需要输出的一系列参数, 其个数必须与格式化字符串所说明的输出参数个数一样多, 各参数之间用","分开, 且顺序一一对应, 否则将会出现意想不到的错误。 2.格式化字符 值 说明 %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数 %x, %X 无符号以十六进制表示的整数 %0 无符号以八进制表示的整数 %g 自动选择合适的表示法 说明: (1). 可以在"%"和字母之间插进数字表示最大场宽。 例如: %3d 表示输出3位整型数, 不够3位右对齐。 %9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6, 小数点占一位, 不够9位右对齐。 %8s 表示输出8个字符的字符串, 不够8个字符右对齐。 如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。 但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出; 若小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。另外, 若想在输出值前加一些0,

c语言实现排列组合

橙三吉。 提交于 2020-03-17 18:49:59
1.求排列组合结果总数 组合:采用递归算法,根据下面第二行公式。 int sumzuhe(int N, int K) { if (K == 0) return 1; if (N == K) return 1; return sumzuhe(N - 1, K - 1) + sumzuhe(N - 1, K); } 排列:采用递归。思想来自:https://blog.csdn.net/u012814856/article/details/73863086。 int sumpailie(int N,int K) { if (K ==1) return N; return sumpailie(N - 1, K - 1)*N; } 2.展示排列,组合结果。 排列:首先从(N)个中取一个数,再在剩余的一次次取一个数,每取一个数就把这位标记为取过了,以免下次再取。取够K个数之后,把K个数输出,展示结果(所以需要提前有一个数组来存 放结果)。然后再取寻找别的第K个数,依次在不断寻找别的第(K-1),(K-2),,,,,个数。取完一个数把标记位设为未取过。 void pailie(int a[],int N,int K,int level)//(K==N)时为全排列 { if (level>=K) { for (int j = 0; j < level; j++) printf("%d ",

C语言入门7-程序设计方法基础-循环结构

倖福魔咒の 提交于 2020-03-17 18:19:23
程序设计方法基础-循环结构 循环三要素: 初值 循环判断条件 步长(循环增量) 循环结构在有些书籍上也称为重复结构, 即反复执行某一部分的操作。 循环三要素: 初值 循环判断条件 步长(循环增量) 如何控制循环的结束呢? 第一种方式就是 条件控制的循环(Condition Controlled Loop),由一个给定的条件来控制,第二种方式就是 计数控制的循环(Counter Controlled Loop),重复处理的次数是已知的, 循环结构的两种实现方法如下图 “当”型循环如上图所示,它是先测试循环条件P,根据测试条件如果为真则执行循环体,否则退出循环, “直到”型循环如上图所示,它是先执行循环体,然后再测试循环条件P,根据测试条件如果为真则再次执行循环体,否则退出循环, 循环体(Body of Loop):被重复执行的操作A 如果第一次测试循环条件为真的话,”当”型循环与”直到”型循环是一样的,两者没有区别; 当第一次测试循环条件就为假时,我们可以看出”当”型循环一次也不执行,而”直到”型循环执行一次。 (当型循环结构 跟 直到型循环结构 是可以互相转化的。) 选择 循环结构的 一般原则 循环 次数已知 计数控制的循环结构 循环次数未知,循环的次数由一个给定的条件来控制 条件控制的循环结构 循环体至少要执行一次 “直到”型循环 变量名: 内存存储单元的一个符号名。 通过