记录每天刷题日常,一些编程思想、小想法、PAT刷题需要注意的细节。
只为了自己做个总结,撸一下思路。
根据算法笔记的刷题顺序来
菜鸟,勿笑.......................................................
A1065 A+B and C
知识点:溢出处理
int型数据(4B)取值范围 [-,)
long long型数据(8B)取值范围 [-,)
A>0,B>0,A+B<0,正溢出
A<0,B<0,A+B>=0,负溢出
B1010 一元多项式求导
while(scanf(“%d”,&k)!=EOF) //读入数据直到文件末尾,End Of File
数组下标、数组元素一个表示指数,一个表示系数
A 1002 A+B for Polynomials
一元多项式问题,类似上一题B1010
double型数据scanf读入用%lf,printf输出用%f,否则出错
格式输出注意
A 1009 Product of Polynomials
多项式的乘法
测试用例出现段错误,是数组越界问题,多项式相乘后最高次幂可能达到2000,因此存放结果的数组至少为2001
B 1041 考试座位号
struct 定义结构体,某一类事物的属性聚集到一起
B1004 成绩排名
struct结构体
注意用if比较最大最小值时,初始化max=0,min=100。注意!!max=0,min=0出错
%c输出字符数组首元素
%s输出字符串
B1028 人口普查*
时间比较方法(参考):
1.常规比较法:先比较年,年相等比较月,月相等比较日
2.long long 型比较法:long long型变量 = year*10000+month*100+day
注意数越小,年龄越大
Jone 2019/05/19用scanf读入:scanf("%s %d/%d/%d",&a,&b,&c,&d);
B 1032 挖掘机技术哪家强
int n;
scanf("%d",&n);
int ans[n];//不报错
int ans[n]={0};//报错,variable-sized object may not be initialized
原因:在C中,使用变量来定义数组长度时,这个数组可以定义,却不能同时进行初始化赋值,需要在之后赋值。(参考)