B 后来发展起来的C++,Java 等语言,无不是在 其基础进行扩充,使其更为灵活,更方便易用。C语言编译器主要有Turbo C 2.0,Turbo C ++3.0,Win Tc、C-free以及Borland C++,Visual C++等等。其中,Turbo c 2.0和TC ++ 3.0都是Dos环境编译器,界面不够友好,而Win Tc则是windows环境下的TC编译器,目前应用较广。C-free则是浙江计算机等级考试推荐的C/C++编译器,以其功能简单,使用方便而著称(www.ProgramArts.com)。虽然Borland C++、C++ Builder和Visual C++也可以调试C/C++程序,但这不是他们的主要功能,他们的主要功能是系统开发,他们虽然功能强大,但对于简单编译C/C++源程序来说就有点小题大作了。
下面来看一个简单的C语言程序。
#i nclude <stdio.h> /*把输入输出函数的头文件包含进来*/
void main() /*必不可少,main()函数,程序运行主函数*/
{
printf(“Hello, world!”); /*任何语句必须以分号结尾*/
/*在屏幕上输出字符串“Hello,world!”*/
}
其中printf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中。printf函数调用的一般形式为: printf(“格式控制字符串”,输出表列)其中格式控制字符串用于指定输出格式。 格式控制串可由格式字符串和非格式字符串两种组成。格式字符串是以%开头的字符串,在%后面跟有各种格式字符,以说明输出数据的类型、形式、长度、小数位数等。如“%d”表示按十进制整型输出,“%ld”表示按十进制长整型输出,“%c”表示按字符型输出等。非格式字符串在输出时原样照印,在显示中起提示作用。 输出表列中给出了各个输出项, 要求格式字符串和各输出项在数量和类型上应该一一对应。
void main()
{
int a=88,b=89;
printf("%d %d\n",a,b);
printf("%d,%d\n",a,b);
printf("%c,%c\n",a,b);
printf("a=%d,b=%d",a,b);
}
本例中四次输出了a,b的值,但由于格式控制串不同,输出的结果也不相同。第四行的输出语句格式控制串中,两格式串%d 之间加了一个空格(非格式字符),所以输出的a,b值之间有一个空格。第五行的printf语句格式控制串中加入的是非格式字符逗号, 因此输出的a,b值之间加了一个逗号。第六行的格式串要求按字符型输出 a,b值。第七行中为了提示输出结果又增加了非格式字符串。
程序的输出结果应该是:
88 99
88,99
x,y
a=88,b=99
附录:格式字符串的意义
表示输出类型的格式字符 格式字符意义
d 以十进制形式输出带符号整数(正数不输出符号)
o 以八进制形式输出无符号整数(不输出前缀O)
x 以十六进制形式输出无符号整数(不输出前缀OX)
u 以十进制形式输出无符号整数
f 以小数形式输出单、双精度实数
e 以指数形式输出单、双精度实数
g 以%f%e中较短的输出宽度输出单、双精度实数
c 输出单个字符
s 输出字符串
提示:有关内容请参考本人Blog中C/C++学习资料中“ASCII代码”和“C语言初学者入门讲座 第五讲 输入输出(1)”日志内容。