保定市住房和城乡建设局网站,免费表格模板下载,关于做门户网站专栏内容通知,公众号怎么制作内容一.printf  
1.基本用法  
printf#xff08;#xff09;的作用是将参数文本输出的屏幕。如下#xff1b;  
2.占位符 
printf#xff08;#xff09;可以在输出文本中指定占位符 #xff0c;“占位符”#xff0c;也就是这个位置可以用其他值代入。   
如#xff1a; …一.printf  
1.基本用法  
printf的作用是将参数文本输出的屏幕。如下  
2.占位符 
printf可以在输出文本中指定占位符 “占位符”也就是这个位置可以用其他值代入。   
如 那么图中的%d就是占位符18就是代入的值。占位符第一个字符都是%第二个字符表示占位符的类型图中%d为整型所以输入是整数。不同的占位符就要输入对应的值。  
printf也可以使用多个占位符  图中有2个占位符为%s%d。那么这2个占位符就对应了后边的2个参数%s为字符串%d为整型占位符与参数是一 一对应的。 
3.占位符列举 • %a ⼗六进制浮点数字⺟输出为⼩写。 • %A ⼗六进制浮点数字⺟输出为⼤写。 • %c 字符。 • %d ⼗进制整数。 • %e 使⽤科学计数法的浮点数指数部分的 e 为⼩写。 • %E 使⽤科学计数法的浮点数指数部分的 E 为⼤写。 • %i 整数基本等同于 %d 。 • %f ⼩数包含 float 类型和 double 类型。 • %g 6个有效数字的浮点数。整数部分⼀旦超过6位就会⾃动转为科学计数法指数部分的 e 为⼩写。 • %G 等同于 %g 唯⼀的区别是指数部分的 E 为⼤写。 • %hd ⼗进制 short int 类型。 • %ho ⼋进制 short int 类型。 • %hx ⼗六进制 short int 类型。 • %hu unsigned short int 类型。 • %ld ⼗进制 long int 类型。 • %lo ⼋进制 long int 类型。 • %lx ⼗六进制 long int 类型。 • %lu unsigned long int 类型。 • %lld ⼗进制 long long int 类型。 • %llo ⼋进制 long long int 类型。 • %llx ⼗六进制 long long int 类型。 • %llu unsigned long long int 类型。 • %Le 科学计数法表⽰的 long double 类型浮点数。 • %Lf long double 类型浮点数。 • %n 已输出的字符串数量。该占位符本⾝不输出只将值存储在指定变量之中。 • %o ⼋进制整数。 • %p 指针。 • %s 字符串。 • %u ⽆符号整数unsigned int。 • %x ⼗六进制整数。 • %zd  size_t 类型。 • %% 输出⼀个百分号。 4.输出格式 
printf可以定制占位符的输出格式  
1.限定宽度  
printf限定宽度是最小宽度如下  图中限度最小宽度为%6d所以宽度最小为6那么123不满足就会在值的前面添加空格补齐输出的值默认是右对齐那么如果想左对齐只需要在%后面加入负号如%-6d 。   如果参数超过了限定宽度是没有问题的因为限定宽度是最小宽度如下图 如下图%12f表示输出的浮点数最少要占12位那么精度默认小数点后为6位剩余的就会在1的前边补齐。  2.限定小数位 
输出小数的时候我们可以根据自己的想法来限定小数位。那么下图中我们想让它输出小数点后2位只需要在%后面加入小数点以及限定的位数即可。 那么会不会四舍五入呢其实是会的如下图 3.限定宽度和限定小数的结合使用  
这2个是可以结合使用的如下图最小宽度为10小数点后限制3位剩余的右边补齐 我们还可以更加灵活一点最小宽度限定小数都是可以用*号来代替的通过printf的参数传入最小宽度为10限定小数位3同等与%10.3f 。如下  4.输出部分的字符  
在%号后面加入小数点以及限定的位数不仅可以用在浮点数也可以用在字符串。如下我们限定的位数为5位所以输出为”zhang“ 。  小结大家可以自行灵活的去实践 
二.scanf 
那么我们有了printf输出当然也有scanf输入了。 
1.基本用法 
用于读取用户的键盘输入 当程序运行到该语句会停下来等待用户在键盘的输入用户输入完按下回车键scanf就会处理用户的输入并存入变量定义的头文件为stdio.h   
scanf与printf一样都是有占位符的如下图 %d 就是⼀个占位符 % 是占位符的标志 d 表⽰整数。第⼆个参数 i 表示将用户从键盘输⼊的整数存⼊变量 i 变量前边必须加入运算符因为scanf传递的是地址将变量i的地址指向用户的输入的值。 例子那么前边2个%d就表示用户输入的是整数后边2个%f表示用户输入浮点数。在这里因为我使用的是vs2022所以scanf( )要加入下划线s 或者包含#define_CRT_SECURE_NO_WARNINGS 这样才不会报错。  那么scanf处理数值占位符会自动过滤空白字符包括空格、制表符、换行符等。 
什么意思呢如下。键盘等待着我输入我可以输入一行然后回车再接着输入下一行。 注意点下图   
图中读取是对应匹配的如%d占位符那么读取到整数18就结束了然后%f占位符从小数点位开始读取就为0.3然后小数点默认精度为6位0.300000  所以输出18 0.300000。 2.scanf返回值 
scanf返回值返回的是一个整数表示成功读取的数量个数 。 
如图成功读取了abc。返回值为3  如果没有读取任何的数或者说读取失败就会返回0在vs环境中按键Ctrlz就是提前结束。  如果在读取之前发生了读取错误会返回常量EOF-1 3.占位符列表 • %c 字符。 • %d 整数。 • %f  float 类型浮点数。 • %lf  double 类型浮点数。 • %Lf  long double 类型浮点数。 • %s 字符串。 • %[] 在⽅括号中指定⼀组匹配的字符⽐如 %[0-9] 遇到不在集合之中的字符匹配将会 停⽌。 值得注意的是除了%c以外其他的占位符都会自动忽略起首的空白字符。如%d可以忽略掉起首的空白字符 但是如果是%c就不可以 ,因为在读取的时候空格也是字符。 如果要跳过空白字符可以在%c前边加一个空格 4.赋值忽略符 
如我们输入日期 但是当我们不符合规定输入 scanf解析数据会失败为了避免这一情况scanf提供了赋值忽略符为*只要把*加在任何占位符%后边该占位符就不会返回值只对它进行解析然后丢弃如%*c表示读取后就丢弃不用返回。 三.结尾 
感谢大家的阅读! ! !