Suppose one mile convert kilometers procedure:
#include <stdio.h>
/* print Mile to Kilometre table*/
main() {
float mile, kilometre;
int lower = 0;//lower limit
int upper = 1000;//upper limit
int step = 30;//step size
printf("Mile Kilometre\n");
mile = lower;
while (mile <= upper) {
kilometre = 1.61 * mile;
printf("%3.0f %6.1f\n", mile, kilometre);
mile = mile + step;
}
}
Run Results:
Mile Kilometer
0 0.0
30 48.3
60 96.6
90 144.9
120 193.2
...
This logic program itself no problem, but can be further optimized, such as the use #define directive to define the lower, upper, step. #Define instruction using known constants defined symbolic constant.
#define
Command syntax is:
#define 常量名 替换文本
After you define a good symbolic constants, the program appears all the constants defined in #define name in, will be replaced with the appropriate text. Constant name starts with the letters may be a sequence of letters and numbers; replacement text can be any sequence of characters.
Constant name is usually spelled in capital letters, a lot of programming languages (Java, Python) have such agreement. Because of this difference between the variable name with lower case letters spelling open.
The above-described procedure to form a symbolic constant version:
#include <stdio.h>
/* print Mile to Kilometre table*/
#define LOWER 0 //lower limit
#define UPPER 1000 //upper limit
#define STEP 30 //step size
main() {
float mile, kilometre;
printf("Mile Kilometre\n");
mile = LOWER;
while (mile <= UPPER) {
kilometre = 1.61 * mile;
printf("%3.0f %6.1f\n", mile, kilometre);
mile = mile + STEP;
}
}
Example results on the same input.
Note: does not end with a semicolon #define command line.