第二章 指导书籍与导言

//本人以【C程序设计语言 第2版·新版】为指导书籍,以下的代码均为此书的例题或是练习。

#include <stdio.h> int main() { int fahr, celsius; int lower, upper, step; lower = 0; upper = 300; step = 20; fahr = lower; while ( fahr <= upper) { celsius = 5 * ( fahr - 32 ) / 9; //这里不直接写成 5 / 9 × ( fahr - 32 )的目的是如果这样,整数除法操作将进行舍位,结果中的任何小数部分都会被舍弃 printf("%d\t%d\n", fahr, celsius); //如果觉得格式不美观,可以指定两个数所占的数字宽,如写成这样:printf("%3d %6d\n", fahr, celsius); fahr = fahr + step; } return 0; }

浮点数版本:

#include <stdio.h>
int main() {
    float fahr, celsius;  //将fahr 和 celsius定义成 float类型更好,那么底下可以直接写成 5 / 9 × ( fahr - 32 ),因为浮点数相除结果不会舍位
    int lower, upper, step;
    
    lower = 0;
    upper = 300;
    step = 20;
    
    fahr = lower;
    while ( fahr <= upper) {
        celsius = 5.0 / 9.0 * ( fahr - 32.0 );  //fahr - 32, 32首先转化成浮点型,再与fahr相减,这里写成32.0强调其浮点性质,便于阅读
        printf("%3.0f %6.1f\n", fahr, celsius); 
        fahr = fahr + step;
    }
    return 0;
}

练习 1-3, 1-4

int main() {
    float fahr, celsius;  
    int lower, upper, step;
    
    lower = -17;
    upper = 148;
    step = 11;
    
    printf("celsius  fahr \n");
    celsius = lower;
    while ( celsius <= upper) {
        fahr = 9.0 / 5.0 * celsius  + 32;
        printf("%3.0f %6.1f\n", celsius, fahr); 
        celsius = celsius + step;
    }
    return 0;
}

for版本:

1 #include <stdio.h>
2 int main() {
3     int fahr;
4     
5     for ( fahr = 0; fahr <= 300; fahr = fahr + 20) {
6         printf("%3d %6.1f\n", fahr, (5.0 / 9.0) * (fahr - 32));
7     }
8     return 0;
9 }

练习 1-5

#include <stdio.h>
int main() {
    int fahr;
    
    for ( fahr = 300; fahr >= 0; fahr = fahr - 20) {
        printf("%3d %6.1f\n", fahr, (5.0 / 9.0) * (fahr - 32));
    }
    return 0;
}

符号常量版:

#include <stdio.h>

#define LOWER 0
#define UPPER 300
#define STEP 20

int main() {
    int fahr;
    
    for ( fahr = LOWER; fahr <= UPPER; fahr = fahr + STEP) {
        printf("%3d %6.1f\n", fahr, (5.0 / 9.0) * (fahr - 32));
    }
    return 0;
}
View Code

文件复制:

示例:将输入一次一个字符地复制到输出

 1 #include <stdio.h>
 2 
 3 int main() {
 4     int c;
 5     
 6     c = getchar();
 7     while ( c != EOF) {
 8         putchar(c);
 9         c = getchar();
10     }
11     return 0;
12 }

精简版本:

#include <stdio.h>

int main() {
    int c;
    
    while ((c = getchar()) != EOF) {
        putchar(c);
    }
    return 0;
}

 

posted @ 2014-03-23 23:01  hunter_dave  阅读(69)  评论(0)    收藏  举报