我们来运行一个程序实例:
/* test.c -- 测试程序 */
/*
\a-警报符
\b-退格符
\t-制表符
\r-使光标移至本行最前面
*/
int main(void){ //main函数添加参数void是一种更好的做法,表明main函数调用不需要参数
float money; //使用变量前先声明,并选择有意义的变量名,或者添加注释解释
printf("\a恭喜发财,红包拿来:");
printf("写下你的理想金额¥_______\b\b\b\b\b\b\b");
scanf("%f", &money);
//注意下面的第一个%d,改成%f
printf("\t\t\t新的一年里月进斗金%d,%d天天天开心",
12*money, 365); //printf()语句被分为两行,只要不在引号内部或者一个单词中间中断就行
printf("\r祝大家新年快乐!!\n");
printf("最后也祝你自己快乐开心、健康平安!!");
return 0;
}
运行结果大家可以复制下来,自己运行程序查看研究,这里只补充两点知识:1.上面提到的用%d显示float类型的浮点数,其值不会被转化成整型,其它浮点类型结果相同,都会产生错误的结果。
2.刷新输出:printf()何时把内容发送到显示设备上?printf()语句需要先将显示内容发送到一个缓冲区中,然后缓冲区中的内容再不断被发送到显示屏上。C标准规定了何时把缓冲区中的内容发送到显示屏(从缓冲区把数据发送到屏幕或文件被称为刷新缓冲区):当缓冲区满、遇到换行字符或需要输入的时候。比如:前两个输出函数的内容会一起显示在屏幕上,然后遇到数据输入;第三个输出函数的内容再接着显示;最后的输出函数的内容再显示,但由于计算机的速度很快,最后两个输出函数的内容也几乎同一时刻显示。