The c programming language第一章节所有程序的实现
//打印第一个程序hello, word
#include<stdio.h>
int main() {
printf("hello, world\n");
return ;
}
//将华氏温度转换为摄氏温度,将从0度-300度之间的温度,以20度为一个间隔打印出对应的摄氏温度
#include<stdio.h>
int main()
{
float fahr, //代表华氏温度的变量
celsius; //代表摄氏温度的变量 float bottom = , //起始温度
step = , //温度变化单元
upper = ; //最高温度 fahr = bottom;
while (fahr <= upper) {
celsius = (5.0 / 9.0) * (fahr - 32.0);
printf("%3.0f %6.1f\n", fahr, celsius);
fahr += step;
}
return ;
}
//由于输出时占位符使用错误,导致大量的强制转换,从而得出奇怪的结果。
//华氏温度转换为摄氏温度
#include<stdio.h>
int main()
{
float fahr,
celsius,
lower,
upper,
step;
lower = 0.0;
upper = 300.0;
step = 20.0; fahr = lower;
printf("FAHR CELSIUS\n");
while (fahr <= upper) {
celsius = (5.0 / 9.0) * (fahr - 32.0);
printf("%3.0f %6.1f\n", fahr, celsius);
fahr += step;
}
return ;
}
//将摄氏温度转换为华氏温度
#include<stdio.h>
int main()
{
float fahr,
celsius,
lower,
upper,
step; lower = 0.0;
upper = 300.0;
step = 20.0; celsius = lower;
printf("CELSIUS FAHR\n");
while (celsius <= upper) {
fahr = celsius * 9.0 / 5.0 + ;
printf("%3.0f %6.1f\n", celsius, fahr);
celsius += step;
}
//验证表达式getchar() != EOF 的值是0还是1.
#include<stdio.h>
int main()
{
int c; c = getchar() != EOF;
printf("%d\n", c); return ;
}
//本程序用来对字符进行计数
#include<stdio.h>
int main()
{
int count = ;
char c;
while ((c = getchar()) != EOF) {
count++;
}
printf("%d\n", count);
return ;
}
//统计行数
#include<stdio.h>
int main()
{
int nl = ;
char c; while ((c = getchar()) != EOF) {
if (c == '\n')
nl++;
}
printf("%d", nl); return ;
}
//统计行数
#include<stdio.h>
int main()
{
int nl = ;
char c; while ((c = getchar()) != EOF) {
if (c == '\n')
nl++;
}
printf("%d", nl); return ;
//单词计数,此处单词为任何不包含空格,制表符和回退符的字符序列
#include<stdio.h>
#define IN 1
#define OUT 0
int main()
{
int state = OUT,
count = ;
char c;
while ((c = getchar()) != EOF) {
if (c ==' ' || c == '\n' || c == '\t') //当state = OUT且c = 非空时,字符数加一
state = OUT;
else if (state == OUT) {
count++;
state = IN;
}
}
printf("%d", count);
return ;
}
//以逆序的打印华氏温度转换为摄氏温度
#include<stdio.h>
int main()
{
float fahr,
celsius,
lower,
upper,
step; lower = 0.0;
upper = 300.0;
step = 20.0; fahr = upper;
printf("FAHR CELSIUS\n");
while (fahr >= lower) {
celsius = (5.0 / 9.0) * (fahr -);
printf("%3.0f %6.1f\n", fahr, celsius);
fahr -= ;
}
return ;
}
//编写一个打印EOF值的程序
#include<stdio.h>
int main()
{
printf("%d\n", EOF);
return ;
}
//统计空格,制表符,换行符个数的程序。
#include<stdio.h>
int main()
{
int nb = ,
nt = ,
nl = ;
char c; while ((c = getchar()) != EOF) {
if (c == ' ')
nb++;
else if (c == '\t')
nt++;
else if (c == '\n')
nl++;
}
printf("空格符: %d 制表符:%d 换行符:%d\n", nb, nt, nl); return ;
}
//编写一个程序将输入复制到输出的程序,并将其中连续的多个空格用一个空格代替,
#include<stdio.h>
int main()
{
char c, //用来存储此次输入的字符
lastc; //用来记录上次输入的字符 lastc = 'a';
while ((c = getchar()) != EOF) {
if (c != ' ' || lastc != ' ') {
putchar(c);
}
lastc = c;
} return ;
}
//编写一个将输入复制到输出的程序,并将其中的制表符替换为\t,把回退符替换为
//\b,把反斜杠替换为\\. 使其能以可见的方式显示出来
#include<stdio.h>
int main()
{
char c;
while ((c = getch()) != EOF) {
if (c == '\t')
printf("\\t");
else if (c == '\b')
printf("\\b");
else if (c == '\\')
printf("\\\\");
else
putchar(c);
}
return ;
}
//编写一个程序,以每行一个单词的形式打印其输入
#include<stdio.h>
int main()
{
char c,
lastc = 'a';
while((c = getchar()) != EOF) {
if (c != ' ' && c != '\t' && c != '\n')
putchar(c);
else if (lastc != ' ' && lastc != '\t' && lastc != '\n')
putchar('\n');
lastc = c;
}
return ;
}
}
The c programming language第一章节所有程序的实现的更多相关文章
- 公用技术——面向对象领域——UML图——《The Unified Modeling Language User Guide》V2读书笔记——第一章节(建模的意义)
第一章节到第三章节介绍UML的基本概念.第一章节主要介绍了UML语言的历史,介绍了建模的重要性(狗窝,房子,大厦),介绍了UML要实现哪些目标,在最后介绍了在使用UML语言时应该遵循的一些原则或者是规 ...
- [iOS翻译]《The Swift Programming Language》系列:Welcome to Swift-01
注:CocoaChina翻译小组已着手此书及相关资料的翻译,楼主也加入了,多人协作后的完整译本将很快让大家看到. 翻译群:291864979,想加入的同学请进此群哦.(本系列不再更新,但协作翻译的进度 ...
- The Swift Programming Language 中文翻译版(个人翻新随时跟新)
The Swift Programming Language --lkvt 本人在2014年6月3日(北京时间)凌晨起来通过网络观看2014年WWDC 苹果公司的发布会有iOS8以及OS X 10.1 ...
- 《The C Programming Language》读书笔记(一)
1. 对这本书的印象 2011年进入大学本科,C语言入门书籍如果我没记错的话应该是谭浩强的<C程序设计>,而用现在的眼光来看,这本书只能算是一本可用的教材,并不能说是一本好书.在自学操作系 ...
- History of programming language
1940之前 第一个编程语言比现代的计算机还早诞生.首先,这种语言是种编码(en:code). 于1801年发明的提花织布机(或称甲卡提花织布机,英文:en:Jacquard loom),运用打孔卡上 ...
- 转:从《The C Programming Language》中学到的那些编程风格和设计思想
这儿有一篇写的很好的读后感:http://www.cnblogs.com/xkfz007/articles/2566424.html 读书不是目的,关键在于思考. 很早就在水木上看到有人推荐& ...
- iOS Swift-元组tuples(The Swift Programming Language)
iOS Swift-元组tuples(The Swift Programming Language) 什么是元组? 元组(tuples)是把多个值组合成一个复合值,元组内的值可以使任意类型,并不要求是 ...
- Scalaz(42)- Free :FreeAp-Applicative Style Programming Language
我们在前面花了几期时间讨论Free Monad,那是因为FP既是Monadic programming,Free Monad是FP模式编程的主要方式.对我们来说,Free Monad代表着fp从学术探 ...
- the C programming language 阅读笔记1
读了一遍著名的<the C programming language>,果然如听说的一样,讲解基础透彻,案例简单典型,确实自己C语言还有很多细节点不是很清楚. 总结一下阅读的收获(部分原书 ...
随机推荐
- 关于sizeof()和内存对齐
PS补充:枚举类型的字节数为什么为4 百度知道回答: typedef enum e1{ MON, TUE, THI, }e; e1是一个数值,它的允许值范围是: MON,TUE,THI, 它的取值为其 ...
- .Xmodmap vim键位映射。
remove Lock = Caps_Lockkeysym Caps_Lock = Control_Ladd Control = Control_Lkeysym Escape = grave asci ...
- Android GridView(九宫图)
GridView跟ListView都是比较常用的多控件布局,而GridView更是实现九宫图的首选! <?xml version="1.0" encoding="u ...
- Android ProgressBar实现加载进度条
progressBar Android进度条组件. progressBar的关键属性: android:max="100" 最大显示进度条 andr ...
- VueJS搭建简单后台管理系统框架 (二) 模拟Ajax数据请求
开发过程中,免不了需要前台与后台的交互,大部分的交互都是通过Ajax请求来完成,在服务端未完成开发时,前端需要有一个可以模拟Ajax请求的服务器. 在NodeJs环境下,通过配置express可访问的 ...
- 初识JavaScript,感觉整个人都不好了。。。
学习web前端的开发已经将近一个月了,开发中的三个大兄弟——“html”.“css”.“JavaScript”,小哥我已经深入接触了前两位,并与他俩建立的深厚的友谊.在编写过程中,不能说达到各位大神的 ...
- GoF——职责链模式
职责链模式(chain of Responsibility):使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系.将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它 ...
- the C programming language 阅读笔记2
1. 指针 1.1 自增符的使用 ++*p;//p指向的内容加一 (*p)++; //p指向的内容加一 *p++;//p本身自增 *++p; //p本身自增 因为诸如*和++这样的一元运算符在表达式求 ...
- windbg 调试技巧
技巧一:在加载名卸载的时候下断点 1. 加载某个DLL 的时候下断点的WinDBG 命令: sxe ld:[dll name] 然后按F5,进行刷新,再使用lmf 查看装载的Dll名称. 2. 卸载 ...
- 数据仓库(七):Oracle Warehouse Builder(OWB)创建数据仓库
本文简述使用OWB创建数据仓库的一般过程.Oracle的OWB是目前最好的三大ETL产品之一.OWB不但可以可以完成数据的抽取.转换和加 载,还能帮助用户在Oracle数据库中创建ROLAP(Rela ...