常量
#define NAME value
const修饰符
系统定义常量:在limits.h头文件
printf()和scanf()
sprintf()作用与printf一样,但它写到字符串里面而不是输出显示,于是他提供了把几个元素组合成字符串的一个途径,第一个参数是目标字符串的地址。
示例
const double N = 3852.99;
printf("%f\n",N);
printf("%e\n",N);
printf("%3.1f\n",N);
printf("%10.3f\n",N);
printf("%+10.3f\n",N);
printf("%-10.3f*\n",N);
printf("%010.3f\n",N);
printf("%10.2e\n",N);
printf("%5.3d\n",6);
printf("%-5.3d\n",6);
#define XH "hello world"
printf("%2s\n",XH);
printf("%13s\n",XH);
printf("%13.3s\n",XH);
//打印较长字符,三者输出一样。
printf("aaa bbb ccc");
printf("aaa bbb \
ccc");
printf("aaa bbb "
"ccc");
scanf("%*d %*d %d",&n);//跳过两个整数
printf("n=%d",n);
输入 1 2 3
输出 n=3
getchar()和putchar()
只对字符起作用
ch=getchar();
scanf("%c",&ch); //两者效果一样
putchar(ch+1);
gets()和puts()
gets()
他返回的是字符串的地址,他不检查预留存储区是否能容纳实际输入的数据,多出来的字符简单溢出到相邻的内存区。fgets()对此做了改进,虽是为文件而设计,但重要编程还是要用fgetsputs
显示字符串时自动在其后添加一个换号符。
char[4] s;
gets(s);//以换行结束输入
puts(s);
//如果遇到文件结尾,gets就返回空
while(fgets(s,4,stdin)){
fputs(s,stdout);
}