您的位置:首页 > 其它

C程序设计语言学习笔记(4)

2012-06-07 14:46 260 查看


C程序设计语言学习笔记(4)

还记得基础(一)中提到了一点代码的简化吗??将多个连续的空格用一个空格代替的程序第二个版本。 flag = (c != ' ');

由于本人的c语言水平有限,还谈不上能分析代码的优化功能,目前就以简化来分析自己c语言心得。

这篇只是简单的介绍一下可以用简洁的语言来实现功能,锻炼我们的c语言思维能力。

先看一个病毒程序,哈哈哈!!!也算是自己近期学习c语言的一个小成就吧,嘻嘻!是很简单哦~~~~~,不过提醒尽量要在自己的电脑测试,呵呵~~~~不要干坏事哦



1 #include <stdio.h>
2 int main()
3 {
4     while(1)
5     {
6         printf("a,\a\n");//报警的转义符\a
7     }
8     return 0;
9 }




好了,编译执行试试看吧!!!肯定会有人不信啦~~~~~

够简单吧!!!!!

下面我们来看看我们如何实现简化我们的代码。

编写程序计算

Formula: Celsius=(5/9)(Fahrenheit -32)



1 #include <stdio.h>
2 int main()
3 {
4     float fahr,cles;
5     float lower=0;
6     float upper=300;
7     float step=20;
8     printf("C F\n\n");
9     /*while 实现
10     fahr = lower;
11     while(fahr<=upper)
12     {
13         cles = (5.0/9.0)*(fahr-32);
14         printf("%3.1f  %6.1f\n",cles,fahr);
15         fahr +=step;
16     }*/
17
18     //用for实现
19     for(fahr=0;fahr<=upper;fahr+step)
20     {
21         cles = (5.0/9.0)*(fahr-32);
22         printf("%3.1f  %6.1f\n",cles,fahr);
23         fahr +=step;
24     }
25     return 0;
26 }




我们看到,用for或者while循环可以轻松实现功能,那么有没有更简洁的写法呢??思考后:

1 float fahr;
2 printf("C     F\n");
3 for(fahr=0;fahr<=300;fahr=fahr+20)
4     printf("%3.1f  %6.1f\n",(5.0/9.0)*(fahr-32),fahr);
5 return 0;


通过for循环实现了一个简化后的功能。这里我们需要理解for的“三部曲”(初始化,条件判断,执行)。

以后我们会看到c语言的三种控制流:顺序,选择,循环。

从c语言的基本语法、基本数据类型、数组、函数、控制流等,我们可以写一些规模较大的程序了。。。。附上一个练习:

c语言之绘制直方图:

编写一个程序,打印输入单词长度的直方图

/*

思路:将单词长度分别为1、2、3、、、放入到一个数组中。并初始化为0;

先统计出每个单词的长度以及每个长度的单词出现的次数。然后用双重循环分别扫描x轴和y轴绘制直方图

*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: