1. 打印摄氏度
/* 1.1 使用int类型进行计算 */
#include <stdio.h> /* print Fahrenheit-Celsius table
for fahr = 0, 20, ...., 300 */
main()
{
int fahr, celsius;
int lower, upper, step; lower = 0; /* lower limit of temperature table */
upper = 300; /* upper limit */
step = 20; /* step size */ fahr = lower;
while(fahr <= upper) {
celsius = 5 * (fahr - 32) / 9;
printf("%d\t%d\n", fahr, celsius); // printf(""%3d %6d\n", fahr, celsius); /* right-justified */ fahr = fahr + step;
}
} /* 1.2 使用 float 类型进行计算 */
#include <stdio.h> main()
{
float fahr, celsius;
int lower, upper, step; lower = 0;
upper = 300;
step = 20; fahr = lower;
while(fahr <= upper) {
celsius = (5.0 / 9.0) * (fahr - 32.0);
// fahr 3个字符宽度,无小数部分; celsius 6个字符宽度,额外包括一个小数位
printf("%3.0f %6.1f\n", fahr, celsius);
fahr = fahr + step;
}
} /* 1.3 使用for循环语句 */
#include <stdio.h> main()
{
int fahr;
for(fahr = 0; fahr <= 300; fahr = fahr + 20) {
printf("%3d %6.1f\n", fahr, (5.0 / 9.0)*(fahr - 32));
}
} /* 1.4 符号常量的应用
因为单纯的数字(如300,20),表达的意义非常模糊,不易于阅读 */
#include <stdio.h> // 定义符号常量
#define LOWER 0
#define UPPER 300
#define STEP 20 main()
{
int fahr; for(fahr = LOWER; fahr <= UPPER; fahr = fahr + STEP) {
printf("%3d %6.1f\n", fahr, (5.0 / 9.0) * (fahr - 32));
}
}
  1. 数据类型:

    • 基本数据类型:

      • int
      • short
      • long
      • float
      • double
      • char
      • arrays
      • structures
      • unions
      • pointers
    • printf()说明:

      • %d: 十进制整数(decimal)
      • %f: floating point
      • %o: octal(八进制)
      • %x: hexadecimal(十六进制)
      • %c: character
      • %s: string
      • %%: %
  2. 字符串的处理
/* file copying (version 1) */
#include <stdio.h> main()
{
int c; while((c = getchar()) != EOF)
putchar(c);
} /* character counting */
#include <stdio.h> main()
{
long nc; for(nc = 0; getchar() != EOF; ++nc)
;
printf("%.0f\n", nc);
} /* line counting */
#include <stdio.h> main()
{
int c, nl; nl = 0;
while((c = getchar()) != EOF)
if (c == '\n')
++nl;
printf("%d\n", nl);
} /* 1-9:
Write a program to copy its input to its output, replacing each string of one or more
blanks by a single blank */ /* version 1*/
#include <stdio.h> #define NONBLANK '-' int main(void)
{
int c, lastc; lastc = NONBLANK; while((c = getchar()) != EOF) {
if(c == ' ') {
if(lastc != ' ') {
putchar(c);
}
} else {
putchar(c);
}
lastc = c;
}
return 0;
} /* a bare-bones version of the UNIX program wc */
#include <stdio.h> #define IN 1
#define OUT 0 main()
{
int c, nl, nw, nc, state; state = OUT;
nl = nw = nc = 0; while((c = getchar()) != EOF) {
++nc;
if (c == '\n') {
++nl;
}
if (c == ' ' || c == '\n' || c == '\t') {
state = OUT;
} else if (state == OUT) {
state = IN;
++nw;
}
}
printf("%d %d %d\n", nl, nw, nc);
}

参考资料:

-The C Programming Language

C语言概述的更多相关文章

  1. 1-学习前言&C语言概述

    [C语言]01-学习前言&C语言概述 参考自 http://www.cnblogs.com/mjios/archive/2013/03/12/2956508.html#label2 C语言是我 ...

  2. OpenGL官方教程——着色器语言概述

    OpenGL官方教程——着色器语言概述 OpenGL官方教程——着色器语言概述 可编程图形硬件管线(流水线) 可编程顶点处理器 可编程几何处理器 可编程片元处理器 语言 可编程图形硬件管线(流水线) ...

  3. Delphi XE5教程1:语言概述

    内容源自Delphi XE5 UPDATE 2官方帮助<Delphi Reference>,本人水平有限,欢迎各位高人修正相关错误! 也欢迎各位加入到Delphi学习资料汉化中来,有兴趣者 ...

  4. java基础---java语言概述

    一.计算机编程的两种范型 1.面向过程的模型---具有线性执行特点,认为是代码作用于数据. 2.面向对象的模型---围绕它的数据(即对象)和为这个数据定义的接口来组织程序:实际上是用数据控制代码的访问 ...

  5. Python语言——Python语言概述

    Python语言概述 计算机语言概述 语言:交流工具,沟通媒介 计算机语言:人和计算机交流的工具,翻译官 Python语言简述 Python是计算机语言的一种 Python编程语言: 代码:人类语言, ...

  6. 01 C语言程序设计--01 C语言基础--第1章 C语言概述&第2章 GCC和GDB

    走进嵌入式开发的世界,企业级项目课程让你达到企业嵌入式应用开发要求.名师在线答疑,解决疑难.科学评测体系,系统评估学习.核心项目实........ 30 门课程 241小时12分钟 824 人学习 学 ...

  7. [编程笔记]第一章 C语言概述

    //C语言学习笔记 第一讲 C语言概述 第二讲 基本编程知识 第三讲 运算符和表达式 第四讲 流程控制 第五讲 函数 第六讲 数组 第七讲 指针 第八讲 变量的作用域和存储方式 第九讲 拓展类型 第十 ...

  8. 第1章 Java语言概述--HelloWorld--环境搭建

    SE学什么 第1章 Java语言概述 第2章 基本语法 第3章 数组 第4章 面向对象编程(上) 第5章 面向对象编程(中) 第6章 面向对象编程(下) 第7章 异常处理 第8章 枚举类&注解 ...

  9. javaSE习题 第一章 JAVA语言概述

    转眼就开学了,正式在学校学习SE部分,由于暑假放视频过了一遍,略感觉轻松,今天开始,博客将会记录我的课本习题,主要以文字和代码的形式展现,一是把SE基础加强一下,二是课本中有很多知识是视频中没有的,做 ...

  10. 大数据技术之_16_Scala学习_01_Scala 语言概述

    第一章 Scala 语言概述1.1 why is Scala 语言?1.2 Scala 语言诞生小故事1.3 Scala 和 Java 以及 jvm 的关系分析图1.4 Scala 语言的特点1.5 ...

随机推荐

  1. 【视频】ffmpeg mov mp4 m3u8 ts

    1.https://ffmpeg.zeranoe.com/builds/ 2.https://blog.csdn.net/psh18513234633/article/details/79312607 ...

  2. open-falcon之judge

    功能 judge 模块主要从transfer中接收数据,并从HBS中获取报警策略,然后进行阈值报警判断 从HBS获取报警策略 接收transfer 上报的数据,并存储最新几个点 判断阈值,产生报警事件 ...

  3. thinkphp5.0 实现单文件上传功能

    思路是:在app/ceshi/fire下面有一个index操作方法来渲染显示前端文件,然后前端文件跳转到upload操作方法进行处理,成功显示"文件上传成功",失败显示错误. 首先 ...

  4. 【Spring Boot&& Spring Cloud系列】单点登录SSO概述

    概念 单点登录(Singleton Sign On),简称为SSO,是目前比较流行的企业业务整合的解决方案之一.SSO的定义是在多个应用系统中,用户只需要登录一次就能访问所有相互信任的应用系统. 也就 ...

  5. Android studio Unable to start the daemon process

    Unable to start the daemon process.This problem might be caused by incorrect configuration of the da ...

  6. Cross-compilation using Clang

    Introduction This document will guide you in choosing the right Clang options for cross-compiling yo ...

  7. Windows平台编译SQLite 3

    由于需要sqlite的x64版本只能自己编译,下载sqlite源代码.sqlite.def.Visual Studio 2013新建一个Visual C++ Empty Project,Configu ...

  8. pycharm的版本问题

    1.分类: 专业版是收费的 Professional 教育版是免费 edu https://www.jetbrains.com/pycharm-edu/whatsnew/ 社区版是免费的 Free C ...

  9. linux编码问题小节

    今天又碰到了难缠的python编码问题,首先主要还是linux操作系统中的编码问题. 无论怎么样,我都没办法在linux的vim中利用中文输入法打出中文? vim中的set encoding,set ...

  10. H3C系列之三层交换机文件管理

    笔者本篇文章所用h3c交换机的型号为三层交换机S3600-28TP-SI 对于文件的操作一般都在用户视图下操作,常见的有如下一些操作: 1.查看操作,常用的查看操作可以使用如下命令: <H3C& ...