简单c语言读程指南

上传人:ji****n 文档编号:45693878 上传时间:2018-06-18 格式:DOC 页数:17 大小:115.50KB
返回 下载 相关 举报
简单c语言读程指南_第1页
第1页 / 共17页
简单c语言读程指南_第2页
第2页 / 共17页
简单c语言读程指南_第3页
第3页 / 共17页
简单c语言读程指南_第4页
第4页 / 共17页
简单c语言读程指南_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《简单c语言读程指南》由会员分享,可在线阅读,更多相关《简单c语言读程指南(17页珍藏版)》请在金锄头文库上搜索。

1、0文专电:稻草人1再版前言本书一开始是由本人为对 c 语言爱好者及想了解 c 语言的人所写,也希望对班级期末考试有所帮助,但出版以来得到很多人的喜爱,说此书简单易懂,挺好的。所以我在此把它发放到百度文库供大家参考。若书中有错误之处,还请大家指正。书中例题全部来自谭浩强教授的C 程序设计 (第三版) 。烟台大学文经学院零九级电子信息工程技术稻草人 2010-8-232前言这种打扮的梦幻骑士,看见他那副样子上路,谁都要笑死的。 很想大大方方地送给世界上每一个人一匹马,当然,是养在心里、梦里、 幻想里的那种马。 我有许多匹好马,是一个高原牧场的主人。 至于自己,那匹只属于我的爱马,一生都在的。 常常

2、,骑着它,在无边的海边奔驰,马的毛色,即使在无星无月的夜里, 也能发出一种沉潜又凝炼的闪光,是一匹神驹。 我有一匹黑马,它的名字,叫做源。节选自三毛送你一匹马在编辑过程中,赵琪、王至清及文专通刘阮星等等对本项工作给予了肯定 与支持,另许老师对编辑进行了审查并提出了宝贵的意见,赵琪、程宁与张强 提供了计算机资源,给编辑带来极大帮助。在此,对许老师,对所有对此表示 肯定的同学表示感谢,谢谢你们!因作者水平有限,难免有错误之处,还望读者赐教指正。作者邮箱: 3注:书中出现的“关键字”即为计算机能认识的运算标记,是 C 语言中具有特 定含义,专门用作语言特定成分的一类标识符。 例 1.2:求两数之和

3、#include 预处理命令,所有程序都有,只是个数与内的内容 不同,与下面读程无太大关系,可以不看; void main( ) 定义主函数,此句是说明下面紧跟的内是一个主函数体, 此句在每个程序都有,记住即可。 int a,b,sum; 定义了整型变量 a,b,sum。关键字 int。只要出现了 int,float,char;全是定义变量,只是类型不同,最常见的 是 int,即整型,其次是 float,单精度型(此类型带小数点, 用来存放小数),再其次是 char,即字符型。记住这几种格式 a=123;b=456; 将 123 赋给 a,同理将 456 赋给 b。 sum=a+b; 同上将

4、a+b 的值结果赋给 sum。 printf(“sum is %dn”,sum); 输出语句,关键字 printf,输出()内 “”内的内容,但当计算机读到%d 时将“, ”后面的 sum 与其替换。同理计算机也识别n,只执行换行但 不在屏幕输出字符“n” ,即换行。所以此句输出 sum is 579。关于%d 这种格式,经常出现的有% d、%f、%c、%s,分别代表整型、单精度型、字符型、 字符串型,对应 int、float、char、char。 例 1.3求两个数中较大者。注:例 8.2 与此题类型相同,但释者从另一角度 解释了函数调用,读者可结合理解。 #include 预处理命令,所有

5、程序都有,只是个数与内 的内容不同,与下面读程无太大关系,可以不看。 void main( ) 定义主函数,此句是说明下面紧跟的内是一个主 函数体,此句在每个程序都有,且一模一样,记住即可。int max( int x, int y ); 这是一个函数声明格式,全部在函 数体内部且在“”紧后面,是给计算机看的,与读 程无太大关系,可以不看;其常见形式有 int 函数 名()、 char 函数名()、 void 函数名 ()。int a, b, c; 定义了整型变量a,b,c;scanf( “ %d, %d ”, 输入语句,关键字 scanf,即从键 盘接收两个数,以“”内的%d 的形式接受,

6、明白此句的作用是将由键盘得到的两个数 分别赋给 a,b 即可。c = max(a, b); 函数调用语句,此语句易迷惑,记住其原始格式: 变量名=函数名() ; 看到此语句后应立即在程序 中找叫做 max 的函数体,并将其()内的数据带过 去,即将 a,b 的数据带过去处理,在此题中接收Comment 1: ()内的数据为: 函数的处理结果返回4这两个字母的依次是 x 和 y,在 max 的函数体内必 有一个 return()语句,将其()内的数据带回并 赋给 c。printf(“ max = %dn”, c); 输出语句,关键字 printf,此语句 输出“”内的内容,但其识别%d,即用 c

7、 将% d 替换,n 是换行,只执行换行但不在屏幕 输出字符“n” ,即换行。 特别注意:到此为止此程序已读 完,无须再往下看int max( int x, int y ) 定义 max 函数,知道在此句中接收本题中 的 a 和 b 分别赋给()内的x 和 y。int z; 定义整型 z。if( x y ) 条件语句,关键字 if,当()内的条件成立时执行下面 的 z=x,且不执行 z=x 后面的 else 语句。如果不成立,则 执行下面的else 语句,若无else 语句,则直接往下读。z = x; 将 x 的值赋给 z;else z = y; 将 y 的值赋给 z。 注意:此 else 语

8、句包括:else z = y; return( z ); 返回值语句,关键字 return,将()内的 内容返回到调用此函数的地方。即返回到main 函 数中并执行c=z,即将 z 赋给 c 。 提示:若发现一段程序由多个函数体构成,第一步先找到主函数, 即 void main()后面的函数体,然后一步一步执行主函数体,主函数体读完即此程序 已读完。 例 2.20 求 5!(即 5*4*3*2*1) #include 同上 ,预处理命令,对我们读程来说无太大含义。 void main() 定义主函数,同上。 int i,t; 定义整型变量 i 和 t。 t=1; 把 1 赋给 t。 i=2;把

9、 2 赋给 i。 while(i void main() char c1,c2; 定义字符型变量 c1,c2。其实此句在上面已经介绍多 次,注意举一反三。 c1=a; 将字符 a 赋给 c1,注意此句中的单引号,其说明 a 是作为一个字符赋给 c1,而不是变量。下同。 c2=b; 将字符 b 赋给 c2。 c1=c1-32; 将 c1-32 的值赋给 c1。注意,此时运算的是 c1 的 ASCII 代码值减 32。由 ASCII 表可知其减去 32 后的值恰是其 对应的大写字母。可参考课本 364 页附录 A。 c2=c2-32; 同理,将 c2-32 的值赋给 c2。注意,此时运算的是 c2

10、 的 ASCII 代码值减 32。由 ASCII 表可知其减去 32 后的值 恰是其对应的大写字母。 printf(“%c%c”,c1,c2);输出语句,以%c(即字符)的格式输出 c1,c2。 例 4.11 从键盘输入一个大写字母,要求改用小写字母输出。 #include void main() char c1,c2;定义字符变量 c1,c2。 c1=getchar();输入语句,关键字 getchar,作用与 scanf 雷同,但没 有 scanf 强大,只能接收一个字符,此句的作用是把 从键盘上获得的字符(这里是一个大写字母)赋给 c1。 printf(“%cn”,c1); 输出语句,将

11、 c1 以%c(字符)的形式输出。 c2=c1+32;将 c1+32 的值赋给 c2。同上题例 3.7,这里运算的仍是 c1 的 ASCII 代码。 printf(“%cn”,c2); 以%c 的形式输出 c2,然后执行n,即换行 注:此题与原题不同,删去一些原作者想展示的副功能,以便于理解。 小结:至此,读者应该能读懂定义(即 int、float、char)变量、printf 输出 语句,下面再遇到时不再做太多解释。 例 5.1 输入两个实数按由小到大输出这两个数 #include void main() 6float a,b,t; 定义单精度变量 a,b,t。 scanf(“%f,%f”,

12、输入语句,关键字 scanf,由键盘接收两个 数以%f 的形式分别赋给 a,b。 if(ab) 条件语句,关键字 if,若()内的条件成立,则继续读 内的内容;若不成立,则读后面的 else 语句,显然,此 条件语句无 else 语句,则直接跳过及其内容继续往下 读。注意:条件语句只读一遍,自己不会循环。 t=a; 将 a 赋给 t。 a=b; 将 b 赋给 a。 b=t; 将 t 赋给 b。 printf(“%f,%fn”,a,b);以%d 的形式输出 a、b,并换行。 注意:此题中的 t=a;a=b;b=t; 是交换 a 和 b 的值的经典算法。切不可用: a=b; b=a; 来交换 a

13、和 b 的值,第一句 a=b 执行后把 b 的值赋给 a,a 的值被改为 b,此时 执行第二句 b=a,把 a 的值赋给 b,其实赋给 b 的还是 b 的值。 注:为了好理解,此题最后一句 printf 语句被修改,原句是: printf(”%5.2f,%5.2fn”,a,b) ; 其实很好理解,即以%5.2f 的形式 输出 a,b。而%5.2f 的意思是输出的 内容的长度为五个格,且保留两位小 数。 例 5.2 输入三个数,按由小到大的顺序输出。 #include void main() float a,b,c,t; 定义单精度型变量 a,b,c,t。 scanf(“%f,%f,%f”,输入

14、语句,关键字 scanf。即从键盘上 以%f 的形式接收三个数字分别赋给 a,b,c。 if(ab) 条件语句,关键字 if,在此题中,先判断()内的内容是否 成立,若成立,执行下面内的内容: 若不成立,则跳过此及其内容,继 续向下执行。 t=a; 将 a 赋给 t。 a=b; 将 b 赋给 a。 b=t; 将 t 赋给 b。7 if(ac) 同上,条件语句,关键字 if,在此题中,先判断()内的 内容是否成立,若成立,执行下面 内的内容:若不成立,则跳过此及 其内容,继续向下执行。 t=a; 将 a 赋给 t。 a=c; 将 c 赋给 a。 c=t; 将 t 赋给 c。 if(bc) 同上,

15、举一反三,现只要求举二反一,应该能读懂。 t=b; b=c; c=t; printf(“%5.2f,%5.2f,%5.2fn”,a,b,c); 输出语句,以%5.2f 的形 式(即输出的数要占五个格且保留两 个有效数字)输出 a,b,c。 析: 此函数的算法思想:若 ab 则将 a 和 b 互换 (此时 a 是 a,b 中的小者)若 ac 则将 a 和 c 互换 (此时 a 是 a、b、c 中的最小者)若 bc 则将 b 和 c 互换 (此时 b 是 b、c 中的小者,也是三 者中的次小者)经这三步后,目的达到。 例 5.4 输入一个字符,判别它是否是大写字母。如果是,将它转 换成小写字母;如果不是,不转换,然后输出最后得到的字符。 #include void main() char ch; 定义字符变量 ch。 scanf(“%c”, 输入语句,关键字 scanf,即以%c 的形式由键盘接收 一

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 初中教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号