C初学日记21.12.6

所以说,一时摸鱼一时爽...不知不觉我又是几天没学习...

总的来说,第四章还是比较简单有趣的,一直有人说《C Primer Plus》啰嗦,看第四章确实由着感觉,printf函数讲了这么久又拿回来在讲一遍...

#include <limits.h>
#include<stdio.h>
int main(void)
{
	printf("show us the MAXimum int vlue on this system %d",INT_MAX);
    return 0;
}

万幸,关于c预处理器的讲述还比较有趣

#include<stdio.h>
#define PAGE 959
int main(void)
{
	printf("*%d*\n", PAGE);
	printf("*%2d*\n", PAGE);
	printf("*%10d*\n", PAGE);
	printf("*%-10d*\n", PAGE);
    return 0;
}
*959*
*959*
*       959*
*959       *

C:\Users\zhou\source\repos\ConsoleApplication7\Debug\ConsoleApplication7.exe (进程 36740)已退出,返回代码为: 0。
按任意键关闭此窗口...

 以及关于修饰符和标记的对比的函数,这段很无聊,但是应该有用

%-nd:“n”=字段宽度 “-”=左对齐;

如果给字段宽度不足,会自动扩大至合适。

#include<stdio.h>
#define PAGE 959
int main(void)
{
	const double RENT = 3852.99;
//const 变量只读
	printf("*%f*\n", RENT);
//*3852.990000*
	printf("*%e*\n", RENT);
//*3.852990e+03*
	printf("*%4.2f*\n", RENT);
//*3852.99*
	printf("*%3.1f*\n", RENT);
//*3853.0*
	printf("*%10.3f*\n", RENT);
//*  3852.990*
	printf("*%10.3E*\n", RENT);
//* 3.853E+03*
	printf("*%+4.2f*\n", RENT);
//*+3852.99*
    printf("*%010.2f*\n", RENT);
//*0003852.99*
	return 0;
}

 这个也比较明确了,对于浮点数:

小数点前的数表示整数位的宽度,依旧是不足会自动填充;

小数点后的数表示保留几位小数,不足则会按照四舍五入的方式进位;

宽度有余并且在整数位宽度前输入了0,则会用0填充满字段宽度。

#include<stdio.h>
int main(void)
{
	printf("**%5.4d**", 6);
//** 0006**
	return 0;
}

而如果使用小数点形式

来表示整数,小数点前依旧是字段宽度,小数点后则为最小位数,不足会用0填满。

#include <stdio.h>
#define BLURB "Authentic imitation!"
int main(void)
{
    printf("[%2s]\n", BLURB);
//[Authentic imitation!]
    printf("[%24s]\n", BLURB);
//[Authentic imitation!]
	printf("[%24.5s]\n", BLURB);
//[                   Authe]
	printf("[%-24.5s]\n", BLURB);
//[Authe                   ]
    return 0;
}

字符串也大体符合上述规范,稍有不同的是如果用小数形式表示,小数点后的数字代表只打印几个字符。

#include <stdio.h>
#define NAME "NAME"
#define DOLLARS 354.34522
int main(void)
{
	printf("The %0.4s family just may be $%3.2f dollars richer!",NAME,DOLLARS);
    return 0;
}

书中练习,翻了个小错误,#define后面的数字不需要引号,但是字符串需要。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值