C语言printf()\scanf()标准化输入与输出函数总结

本文详细介绍了C语言中的printf和scanf函数,包括printf的基本输出、占位符及其与数据类型的对应、修饰符的使用以及scanf的占位符、忽略空白字符规则和返回值。
摘要由CSDN通过智能技术生成

一、printf函数的介绍

1.基本输出

printf()的作用是将参数文本输到屏幕。f表示format(格式化),表示可定制输出文本的格式。在使用printf函数之前应包含头文件#include<stdio.h>。

#include<stdio.h>
int main()
{
   printf("hello world\n");
   return 0;
}

2.占位符是什么

#include<stdio.h>
int main()
{
   printf("%s says it is %d o'clock\n",Xiaoli,6);
   return 0;
}

这里的%d和%s都是占位符,一条printf语句中可含有多个占位符予以打印。

3.占位符的列举

占位符的种类是与数据类型紧密相关的,让我们先回顾一下数据类型。

3.1整型

//短整型

short [int]

[signed] short [int]

unsigned short [int]

//整型

int

[signed] int

unsigned int

//长整型

long [int]

[signed] long [int]

unsigned long [int]

//长长整型

long long [int]

[signed] long long [int]

unsigned long long [int]

整型本身有3✖4=12种类型,再加上不同进制的类型,一共16种,总结如下:

%d     %o     %x     %u

%hd   %ho   %hx   %hu

%ld     %lo    %lx    %lu

%lld    %llo   %llx    %llu

3.2浮点型

//单精度浮点型

float %f

//双精度浮点型

double %lf

long double %ld

3.3字符型

//单字符

char %c

3.4几种特殊的占位符

//字符串 %s

//size_t %zd(用于计算字符占用的字节空间)

%p(指针)、%%(打印一个百分号)

4.修饰符

在占位符前常常可输入数字来限定最后输出\输入数据的长度、左右对齐等。以下即为修饰符的具体应用。

4.1限定宽度

printf()允许限定占位符的最小宽度。

#include<stdio.h>
int main()
{
   printf("%5d\n",123);\\默认+为右对齐
   return 0;
}

“5”,即为允许后面变量/常量输出的最大长度。“+”为右对齐,“-”为左对齐。

4.2限定小数宽度

#include<stdio.h>
int main()
{
   printf("%6.2f\n",123.456);
   return 0;
}

"6"表示输出数据的最小宽度,一般可省略。“2”表示小数点后只保留2位,所以这个程序输出结果为123.46(系统默认四舍五入)。

二、scanf()函数的介绍

scanf函数与printf函数用法基本相同,不同之处在于scanf函数在引用变量/常量时需要加地址&,两变量之间需要加逗号。

#include<stdio.h>
int main()
{
   int num=0;
   float ave=0.0;
   scanf("%d%f",&num,&ave);
   printf("%d %f\n",num,ave);
}

1.scanf的占位符

scanf占位符与printf基本相同,但要注意以下几点:

除了%c以外,都会自动忽略起首的空白字符。

对于%10s,他从第一个非空白字符读起,一直到遇到(空白字符、换行符、制表符)为止。

“10”表示最长读到的字符串长度(不包括“\n”).

2.scanf的返回值

scanf函数的返回值为成功读取变量的个数!

#include<stdio.h>
int main()
{
   int i=0;
   while(scanf("%d",&i)!=EOF)
      {
        printf("%d ",i);
      }
 return 0;
}

以上这段代码代表只要成功读取到i,while循环将一直进行下去。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值