• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

XiaoXiaoli

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

c_输入输出函数

输入函数和输出函数,统称为IO操作。

函数类型  函数原型 函数功能 函数参数 函数举例
格式化输入函数:scanf    scanf,其是单词scan和format的缩写。scanf的本质也是给变量赋值。    
格式化输出函数:printf int printf(const char *format, ...);   printf是典型的变参格式化输出函数。

format: %[修饰符]格式字符

 
字符输入函数:getchar        
字符输出函数:putchar        
字符串输入函数:gets        
字符串输出函数:puts        

关于格式化输入输出函数中的格式字符和修饰符。

格式字符介绍:

格式字符 格式字符的意义 用法
d 以十进制形式输出带符号整数(正数不输出符号)

%d 按照整型数据的实际长度输出。

%md m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出

o 以八进制形式输出无符号整数(不输出前缀0)  
x,X 以十六进制形式输出无符号整数(不输出前缀Ox)  
u 以十进制形式输出无符号整数  
f 以小数形式输出单、双精度实数  

%f:不指定宽度,整数部分全部输出并输出6位小数。

%m.nf:输出共占m列,其中有n位小数,若数值宽度小于m左端补空格。

%-m.nf:输出共占m列,其中有n位小数,若数值宽度小于m右端补空格。

e,E 以指数形式输出单、双精度实数  

%e:数字部分(又称尾数)输出6位小数,指数部分占5位或4位。

%m.ne和%-m.ne:m、n和”-”字符含义与前相同。此处n指数据的数字部分的小数位数,m表示整个输出数据所占的宽度。

g,G 以%f或%e中较短的输出宽度输出单、双精度实数  
c 输出单个字符  
s 输出字符串

 printf("%s", "CHINA")输出"CHINA"字符串(不包括双引号)

%ms:输出的字符串占m列,如果字符串本身长度大于m,则突破获m的限制,将字符串全部输出。若串长小于m,则左补空格。

%-ms:如果串长小于m,则在m列范围内,字符串向左靠,右补空格。

%m.ns:输出占m列,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格。

%-m.ns:其中m、n含义同上,n个字符输出在m列范围的左侧,右补空格。如果n>m,则自动取n值,即保证n个字符正常输出。

修饰符介绍:

 

标 志意义用法
- 结果左对齐,右边填空格  
+ 输出符号(正号或负号)  
空格 输出值为正时冠以空格,为负时冠以负号  
# 对c、s、d、u类无影响;
对o类,在输出时加前缀o;
对x类,在输出时加前缀0x;
对e、g、f 类当结果有小数时才给出小数点。
 
. 精度格式符以“.”开头,后跟十进制整数。本项的意义是:如果输出数字,则表示小数的位数;如果输出的是字符,则表示输出字符的个数;若实际位数大于所定义的精度数,则截去超过的部分。  
  长度格式符为h、l两种,h表示按短整型量输出,l表示按长整型量输出。  
  用十进制整数来表示输出的最少位数。若实际位数多于定义的宽度,则按实际位数输出,若实际位数少于定义的宽度则补以空格或0。  

 

 

关于对齐:

 

posted on 2021-02-12 15:24  XiaoXiaoli  阅读(98)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3