本文记录了很少遇到的格式--具体试过就懂了(懒)
%*.* 这两个星号的值分别由第二个和第三个参数的值指定
char *ch="Fuck world !";
printf("%*.*s\n",m,n,ch);
第一个*为输出字符串前空出的字符宽度,对应参数m。
第二个*为输出字符串中字符的个数,对应参数n。
能够对参数m和n赋值,从而控制输出的格式。
printf输出格式补充
本文记录了很少遇到的格式--具体试过就懂了(懒)
%*.* 这两个星号的值分别由第二个和第三个参数的值指定
char *ch="Fuck world !";
printf("%*.*s\n",m,n,ch);
第一个*为输出字符串前空出的字符宽度,对应参数m。
第二个*为输出字符串中字符的个数,对应参数n。
能够对参数m和n赋值,从而控制输出的格式。
C语言输出万年历
输入指定年月后输出对应月份的万年历。。。。。
与某小友聊天兴起搞之。。。。。
写成一个函数方便调用和修改
绝对精简绝对短233333333333333333333333333
样例
2014 11
Sun Mon Tue Wed Thu Fir Sat
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
2010 2
Sun Mon Tue Wed Thu Fir Sat
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28
typedef与指针
昨天收到一奇葩程序 乱用指针的。。修改后一直想记录下。。。
感觉需要注意,,,,
typedef int A[2];
A b[3]={32,11,23,45,6,7};
printf("\n%d",b[1][0]);
可以看出,先定义一种新的数据类型 A,他是一个 2个元素的一维数组。然后再定义一个含有
3个 A 类型的一维数组b,这样b其实就是一个二维数组了,b[3]代表的是有3行这样的一维数组
所以这样下来实际上等效于 b3。
C/C++二进制文件读写
由于需要弄几个二进制文件做配置文件的测试,所以想自己生成几个以二进制文件。。。
说道文件 估计大家都不会陌生
我们最常用的方法就是FILE *fp = fopen("path","rw");
下面就介绍一下如何将内容以二进制的方算式写入文件
union 一个被忽略掉的强力武器
在实验室试着将数据从单片机写到sd卡中的时候,由于<span style="text-decoration: underline">只能按照字节的方式进行写入和读取</span>,所以而在使用位运算进行操作的话 麻烦又浪费时间。。。
于是在百大爷上转转。。。。
原本写的程序中有需要将一个 unsigned long型数据写入sd卡中
POJ1157 LITTLE SHOP OF FLOWERS dp
http://poj.org/problem?id=1157
题目描述很麻烦。。。。
举个栗子把~~
输入
3 5
7 23 -5 -24 16
5 21 -4 10 23
-21 5 -4 -20 20
输出
53
POJ1458 Common Subsequence DP 最长公共子序列
POJ1458
题目大意:
输入2个字符串 输出两个字符串最长公共子序列。。
eg:
input: abcfbc abfcab (注意!这条数据 字串的顺序可能变了。。。)
programming contest
abcd mnp
output:4
2
0
POJ1953 World Cup Noise DP入门
POJ1953
一道很好的dp入门题目。。。被我坑了。
开始读题没有读明白误解了题目 因为它跟Hrbust1132水数一样。。
后来发现是自己错了。。。
POJ2081 Recaman's Sequence DP入门
POJ2081
题目描述的是 有一个数组大小为500000
从a0 = 0 开始,m > 0
if(am > 0 并且 am没有在a数组中出现过) am = am−1 − m
else am = am−1 + m
数组示例:0, 1, 3, 6, 2, 7, 13, 20, 12, 21, 11, 22, 10, 23......