格式字符

printf  讲解:
#include<stdio.h>
int main()
{
    int a=100;
    float b=123.255;
    
    printf("a=%d\n",a);     
    printf("a=%10d\n",a);
    printf("a=%-10d\n",a);
    printf("a=%+d\n",a);
    printf("a=% d\n",a);
    printf("a=%#o\n",a);	8进制
    printf("a=%#x\n",a);
    printf("b=%lf\n",b); 
    return 0;
}
运转结果
a=100
a=        100
a=100
a=+100
a= 100
a=0144	//8进制
a=0x64	//16进制
b=123.254997
/
/
#include<stdio.h>
int main()
{
    int a=3456;
    printf("a=%3d\n",a);     //若实际位数多于最小的宽度:则按实际位数输出
    printf("a=%10d\n",a);    //若实际位数少于最小的宽度:则右对齐,左边留空
    printf("a=%-10d\n",a);   //若实际位数少于最小的宽度:有负号,左对齐,右边留空
    printf("a=%010d\n",a);   //若实际位数少于最小的宽度:表示宽度的数字以0开端,则右对齐,左边填0
    printf("a=%-010d\n",a); //左对齐,0无意义。
    return 0;
}
运转结果:
a=3456
a=       3456
a=3456
a=0000003456
a=3456
/
/
#include<stdio.h>
int main()
{      
      char ch="abcdefg";


      printf("%.3f\n",12.3456);
      printf("%.9f\n",12.3456);
      printf("%.3s\n",ch);
      printf("%.9s\n",ch);
      return 0;
}
运转结果:
12.346           //四舍五进到小数点后三位
12.345600000     //不足补0
abc
abcdefg


————————————————————————————
type
含义如下:
字符	输入数据类型	含义
d、i	int	有符号10进制数,i是老式写法
o	unsigned int	无符号8进制数
u	unsigned int	无符号10进制数
x、X	unsigned int	无符号16进制数,x用abcdef,X用ABCDEF表示10~15的数
f	double	小数
e、E	double	
科学计数法表示的数,大小写代表用的“e”的大小写
g、G	double	使用以上两种中最短的形式,大小写的使用同%e和%E
c	char	把输入的数字转换为对应的字符
s、S	char *、wchar_t *	字符串
p	void *	以16进制形式输出指针
n	int *	到此字符之前为止,一共输出的字符个数,不输出文本
%	不输入	输出字符“%”本身
注:%g、%G在小数点位数四位或指数大于等于精度时用%e、%E,否则用%f。


————————————————————————————
本义字符    意义         ASCII值(十进制)
\a          响铃(BEL)    007
\b          退格(BS)     008
\f          换页(FF)     012
\n          换行(LF)     010
\r          回车(CR)     013
\t          程度制表(HT) 009
\v          笔挺制表(VT) 011
\\          反斜杠       092
\?          问号字符     063
\'          单引号字符   039
\"          双引号字符   034
\0          空字符(NULL) 000
\ddd        恣意字符     三位八进制
\xhh        恣意字符     二位十六进制



关于格式字符应用背景如下(之前在做《VC实战视频》的第一部的时候就有用到,以后也会经常用到的):
[整数转化为字符串]用%d            如果是浮点数转化为字符串的话用%f
char z[260];
int c=999;
sprintf(z,"进程PID数值等于%d",c);//整数c转化为字符串保存到z字符串变量里面
MessageBox(z,"提示",0); 
然后就弹出提示框:  "进程PID数值等于999"

[整数转化为字符串,以16进制形式显示] 用%x
char z[260];
int c=10;//10进制数值10 的16进制等于0xa
sprintf(z,"进程PID数值等于%x",c);//整数c转化为字符串保存到z字符串变量里面
MessageBox(z,"提示",0); 
然后就弹出提示框:  "进程PID数值等于0xa" 


[字符串转化为字符串(其实没转化)] 用 %s
char z[260];
sprintf(z,"进程名为%s","计算器.exe");//整数c转化为字符串保存到z字符串变量里面
MessageBox(z,"提示",0); 
然后就弹出一个提示框: "进程名为计算器.exe" 
-------------------------------------------------------------------------------------------------

1.%d格式符。它的作用是将其对应的表达式的值按照十进制整数方式输出。(这个符号)
2.%o格式符。它的作用是将其对应的表达式的值按照八进制整数方式输出。 

3.%x格式符。它的作用是将其对应的表达式的值按照十六进制整数方式输出。 

4.   %u格式符。它的作用是将其对应的表达式的值按照十进制无符号整数方式输出。 

5.%c格式符。它的作用是将其对应的表达式的值按照字符方式进行输出。 

6.   %s格式符。它的作用是输出一个字符串。 

7.   %f格式符。它的作用是将其对应的表达式的值按照
浮点小数方式进行输出。 

8.%e格式符。它的作用是将其对应的表达式的值按照指数方式进行输出。 

9.    %g格式符。它的作用是将其对应的表达式的值按照实数与指数方式中较短的一种方式进行输出。 

10. %%格式符。它的作用是输出一个百分号。


二、转义字符
C语言 特殊字符的表示:
     应用背景:比如 字符串 "c:\1\3\xx.text" 在VC6.0里面表示会报错的,因为里面有特殊的字符单斜杠\,这个字符必须要写成\\才能表示 即修改为 "c:\\1\\3\\xx.text" 

\a:蜂鸣,响铃

\b:回退:向后退一格

\f:换页

\n:换行,光标到下行行首

\r:回车,光标到本行行首

\t:水平制表

\v:垂直制表

\\:反斜杠

\':单引号

\":双引号

\?:问号

\ddd:三位八进制

\xhh:二位十六进制

\0:空字符(NULL),什么都不做


三、关键字
关键字
用 途
说明
auto
存储种类说明
用以说明局部变量,缺省值为此
break
程序语句
退出最内层循环
case
程序语句
Switch语句中的选择项
char
数据类型说明
单字节整型数或字符型数据-字符串 chan b[260];字符串声明
const
存储类型说明
在程序执行过程中不可更改的常量值
continue
程序语句
转向下一次循环
default
程序语句
Switch语句中的失败选择项
do
程序语句
构成do..while循环结构
double
数据类型说明
双精度浮点数
else
程序语句
构成if..else选择结构
enum
数据类型说明
枚举
extern
存储种类说明
在其他程序模块中说明了的全局变量
flost
数据类型说明
单精度浮点数
for
程序语句
构成for循环结构
goto
程序语句
构成goto转移结构
if
程序语句
构成if..else选择结构
int
数据类型说明
基本整型数
long
数据类型说明
长整型数
register
存储种类说明
使用CPU内部寄存的变量
return
程序语句
函数返回
short
数据类型说明
短整型数
signed
数据类型说明
有符号数,二进制数据的最高位为符号位
sizeof
运算符
计算表达式或数据类型的字节数
static
存储种类说明
静态变量
struct
数据类型说明
结构类型数据
swicth
程序语句
构成switch选择结构
typedef
数据类型说明
重新进行数据类型定义
union
数据类型说明
联合类型数据
unsigned
数据类型说明
无符号数数据
void
数据类型说明
无类型数据
volatile
数据类型说明
该变量在程序执行中可被隐含地改变
while
程序语句
构成while和do..while循环结构
四、运算符

符号
说  明
算 术 运 算 符
+
加法运算符,或正值符号
减法运算符,或负值符号
*
乘法运算符
/
除法运算符
%
模(求余)运算符;如5%3结果得2
关 系 运 算符
<
小于
>
大于
<=
小于或等于
>=
大于或等于
= =
等于                 比如 if(a==1 ){.....} 如果a等于1 那么就....
!=
不等于              比如 if(a!=1 ){.....} 如果a不等于1 那么就....
逻 辑 运 算符
&&
逻辑与              比如 if(a==1 &&  b==1){.....}如果a等于1并且b也等于1那么就....
||
逻辑或                比如 if(a==1 ||  b==1){.....}如果a等于1或者b等于1那么就....
逻辑非
位  运  算符 到目前为止, 位运算在写调试器和键盘钩子的时候会用到的
&
按位与     
此符号如果是 获取变量的内存地址,此刻它就不是位运算符了
比如 int  b;    那么 &b就是变量b的内存地址了,一般是指针操作的时候会用到。
|
按位或
^
按位异或
~
按位取反
<<
位左移
>>
位右移
自 增 减 运 算符
++i
在使用i之前,先使i值加1   ++i其实就是i=i+1
--i
在使用i之前,先使i减加1  --i其实就是i=i-1
i++
在使用i之后,先使i值加1
i--
在使用i之后,先使i减加1
五、复合运算符 比如a+=2是a=a+2的简写
复 合 运 算
+=
加法赋值
%=
取模赋值
|=
逻辑或赋值
-=
减法赋值
<<=
左移赋值
^=
逻辑异或赋值
*=
乘发赋值
>>=
右移赋值
~=
逻辑非赋值
/=
除法赋值
&=
逻辑与赋值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值