实验结论:
格式符 | 含义 | 举例 | 结果 | 特殊的注意事项 |
%d | 输出 | iint a=567;printf("%d",a); | 567 | %5d:输出宽度为5的十进制数 |
%f | 输出 | |||
%c | 输出 | |||
%e | 输出 | |||
%s | 输出 |
part 1:格式化输入函数printf()和格式化输出函数scanf()
ex2_1.c
/*常用格式控制符使用*/ #include<stdio.h> int main(){ int x=1234; float f=123.456; double m=123.456; char ch='a'; char a[]="Hello,world"; int y=3,z=4; printf("%d,%d\n",y,z); printf("y=%d,z=%d\n",y,z); printf("%8d,%2d\n",x,x); printf("%f,%8f,%8.1f,%0.2f,%.2e\n",f,f,f,f,f); printf("%1f\n",m); printf("%3c\n",ch); printf("%s\n%15s\n%10.5s\n%2.5s\n%.3s\n",a,a,a,a,a); return 0; }
格式控制字符串一般由修饰符和控制字符组成
ex2_2.c
/* 这是一个格式化输入输出函数及格式符使用练习 找出两处错误,修改并运行程序 为a1,a2,a3,c1,c2,c3,x,y输入数据,使得: a1=1,a2=2,a3=3,c1='a',c2='b',c3='c', x=1.5, y=2.5 */ #include <stdio.h> int main() { double x,y; char c1,c2,c3; int a1,a2,a3; scanf("%d %d %d",&a1,&a2,&a3); printf("%d,%d,%d\n",a1,a2,a3); scanf("%c%c%c",&c1,&c2,&c3); printf("%c%c%c\n",c1,c2,c3); scanf( "%lf,%lf",&x,&y); printf("%f,%f\n",x,y); return 0; }
当变量类型为双精度时,输入函数和输出函数中的内容不相同
part 2:单个字符输出函数putchar()和单个字符输入函数getchar()
1.单个字符输出函数putchar()
/* putchar()可以用于在屏幕上输出单个字符 括号中要给出想要输出的字符参数,参数可以是字符型常量/变量/表达式 如果使用这个函数,需要在程序前面加上#include <stdio.h> */ #include <stdio.h> int main() { char ch; ch = 'A'; putchar(ch); // 参数ch是字符型变量 putchar(ch+32); // 参数ch+32是字符型表达式 putchar('\x41'); // 参数是字符型常量,是用十六进制表示的转义字符,是'A'的ASCⅡ码值 putchar('\n'); // 参数\n是字符型常量,是转义字符,表示换行 return 0; }
2.单个字符输出函数getchar()
* getchar()可以用于从键盘上输入单个字符 括号中不需要参数 如果输入成功,函数会返回用户从键盘输入的字符 如果使用这个函数,需要在程序前面加上#include <stdio.h> */ #include <stdio.h> int main() { char ch; ch = getchar(); // 用户从键盘输入字符,如果输入成功,输入的字符被赋值给ch putchar(ch); // 使用putchar()输出字符变量ch中存放的字符 printf("%c",ch); // 使用printf()和格式符%c输出单个字符 return 0; }