尧图精选

9.30blog

🕒 发布时间:2026/10/1 16:12:44 📁 来源:尧图网络
2026年9月24日14:091.printf占位符的作用是用“”后面的数据或词句替换语句中的占位符指定格式例如printf(“There are %d apples”,2);生成There are 2 apples例2printf(“%s will come tonight\n”,“张三”);例3printf(“%s says it is %d o’clock”,“zhangsan”,10);例4printf(“a 的地址为 %p”,a); %p专门用来打印地址的即指针注意顺序不能乱占位符的举例2.printf的输出格式限定宽度printf限定占位符的最小宽度例如 printf(“%d\n”,123);printf(“%5d\n”, 123);想要左对齐则在%后加-对于小数 这个限定符会限制所有数字的最小显示宽度位数包括小数点例如 printf(“%f”,123.45);//%f默认输出6位小数3.printf打印总是显示正负号例如printf(“%d\n”,12);printf(“%-d”, 12);4.限定小数位数希望小数点后只保留n位 则占位符可以写成%.nf例如printf(“%.9f”,1.2);printf(“%.2f”,1.256);//四舍五入5.限定宽度与限定小数位数结合例如printf(“%6.2f”,1.256);最小宽度和小数位数这两个限定值都可以用*相当于占位符代替通过printf的参数传入例如printf(“%*.*f”,6,2, 1.256);6.输出部分字符串%s只想输出开头的部分可以用%.ns指定输出的长度例如printf(“%.3s”,“abcdefgh”);输出abc2.1.scanf 的基本用法Int i0scanf“%d”i第一个参数放置占位符控制解读的参数类型。改格式字符串中有多少个占位符就要有多少个变量变量如果本身不是地址的话要加上取地址符2.2scanf可以输入多个数据例如int i 0;int j 0;float x 0.0;float y 0.0;printf(“请输入你的数据”);scanf(“%d%d%f%f”,i,j,x,y);printf(“i%d\n”,i);printf(“j%d\n”,j);printf(“x%f\n”,x);printf(“y%f\n”,y);scanf处理数值占位符时会自动过滤空白字符包括空格、制表符、换行符2.scanf处理数据的原理多个scanf的情况用户的输入先放缓存按下回车键后才开始解读会从上一次解读遗留的第一个字符开始知道读完缓存或者遇到第一个不符合条件的字符为止。例如scanf(“%d”,x);printf(“%d\n”,x);scanf(“%f”,y);printf(“%f\n”,y);输入-14.45e12#0输出-14449999994880.000000例如scanf“%d%f”xy也可以3.scanf的返回值scanf的返回值是一个整数表示成功读取的变量个数如果没有读取任何项或匹配失败则返回0.如果在成功读取任何数据之前发生了读取错误或者遇到读取到文件结尾则返回EOF-1例如{int a 0;int b 0;float f 0.0;int rscanf(“%d %d %f”,a,b,f);//表示成功读取到数据的个数printf(“a%d,b%d,f%f,r%d\n”,a,b,f,r);return 0;}ctrl加z在算法竞赛中可以计算多组数据的做法2.3scanf的占位符注%c不会跳过起首的空白字符如果想要跳过空白字符例如若非要打印带空格的字符串例如修改变成%[m]s的形式会更加安全些2.4赋值忽略符
上一篇/下一篇内容由系统自动关联 返回资讯列表 →