常量
#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);
}