#学校OJ已经刷到1500+了,来总结一下叭
回顾时发现我没从0写起,我还不是个合格的程序媛,现在补上
#0#关于double
输入:scanf函数必须用%lf读入
输出:printf函数可以用%f||%lf输出
#1# const double pi= 3.14159;
or const double PI = atan(1.0)4;
or #define PI 3.14159
/ tan45度=1,45度换成弧度就是 pi/4,反三角函数就是就atan(1.0) 再乘以4就是 pi, 求圆周率 */
#2#浮点数不是真正的实数,无法与0直接比较大小
例子如下【判断三角形的形状时也用到了无法直接与0比较】
#include <stdio.h>
#include <math.h>
#define EPS 1e-6
int main()
{
float a,b,c,p,q,disc;
printf("Please enter the coefficients a,b,c:");
scanf("%f,%f,%f\n",&a,&b,&c);
disc = b*b-4*a*c;
p = -b/(2*a);
q = sqrt(fabs(disc))/(2*a);
if(fabs(a) <= EPS){
printf("It is not a quadratic equation!");
}else if(fabs(disc) <= EPS){
printf("x1 = x2 = %.2f\n",p);
}else if(disc > EPS){
printf("x1 = %.2f, x2 = %.2f\n",p+q,p-q);
}else
printf("x1 = %.2f+%.2fi, x2 = %.2f-%.2fi\n",p,q,p,q);
return 0;
}
#3#switch-case的使用
坑在break;
例子如下
switch(ch)
{
case '+':
printf("=%.2f\n",op1+op2);
break;
case '-':
printf("=%.2f\n",op1-op2);
break;
case '*':
printf("=%.2f\n",op1*op2);
break;
case '/':
printf("=%.2f\n",op1/op2);
break;
default:
printf("Unknown operator\n");
}
#4#ASCII码表
###32:空格
48-57:0-9
65-90:A-Z
97-122:a-z
0~31&&127(共33个):控制字符或通讯专用字符
#5#break&continue语句的使用【百度到的某个博主的总结】
一、1.break语句通常用在循环语句和开关语句中。当break语句用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;如果没有break语句,则将成为一个死循环而无法退出。
2.当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句,通常break语句总是与if语句联在一起。即满足条件时便跳出循环。
二、continue语句的作用是跳过本循环中剩余的语句而强制执行下一次循环。continue语句只用在for、while、do-while等循环体中,常与if条件语句一起使用,用来加速循环。
————————————————
版权声明:本文为CSDN博主「zailushangha」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zailushangha/article/details/8545287
#6#闰年:
普通闰年和世纪闰年
普通闰年:公历年份是4的倍数的(能被4整除,不能被100整除)
世纪闰年:公历年份是整百数,必须是400的倍数才是闰年(能被400整除)
//四年一闰,百年不闰,四百年再闰.
year%4==0&&year%100!=0||year%400==0