一、跳出循环的两个值
1、continue是跳出本次循环;
2、break是跳出单层循环;
二、函数是为了对某个功能进行模块化。
函数是模块化构建程序。
1、scanf看着繁杂,其实很好理解(记住下面五点就好)
(1.)在scanf输入参数时,变量前面的取地址符不要忘记否则打印不出来;
(2.)scanf中的双引号内,除了输入控制符什么都不要写;
(3.)输入控制符和参数一定要在数量上对应;
(4.)输入控制符的类型要跟变量一致;
(5.)使用scanf之前先用printf提示输入;
2、代域宽和精度的打印
3.地址长度和系统操作空间有关系
32bit...................................32跟,一次一字节
2^32B/2^10=2^22KB/2^10=2^12MB/2^10=2^2GB=4GB
4.常用数学公式函数
//数学公式
int a=-200;
float b=300.4;
float c=900;
int d = -20;
printf("%.1f\n",sqrt(c));
printf("%.1f\n",fabs(a));
printf("%d\n",abs(d));
printf("%.1f\n",ceil(b));
printf("%.1f\n",floor(b));
printf("%.1f\n",pow(2,3));
5.计算数据类型 在内存中的空间大小
printf("%d\n",sizeof(int));
printf("%d\n",sizeof(short int));
printf("%d\n",sizeof(long int));
printf("%d\n",sizeof(long long int));
printf("%d\n",sizeof(float));
printf("%d\n",sizeof(double));
printf("%d\n",sizeof(char));
6、各种格式化符的打印
int a=2000;
int a1=-2000;
float b=2000.1234;
float c=2000.123478;
double d=2000.123456897;
printf("%3.1d\n",a);
//打印出5位数,不够五位数用空格打开
printf("%5d\n",a);
//打印数左对齐
printf("%-5d\n",a);
//+5代表打印数前面加-
printf("%+5d\n",a1);
printf("%3d\n",a);
printf("%5d\n",a);
printf("%3.1f\n",b);
printf("%7.1f\n",b);
printf("\n");
printf("% d\n",a);
printf("% d\n",a1);
printf("%06d\n",a);
printf("%06d\n",a1);
printf("\n");
printf("%15f\n",c);
printf("%f\n",c);
printf("%15f\n",d);
printf("%f\n",d);
7、定义函数方法
(1.)指定函数名字
函数名字要遵循标识符的规则
(2.)指定函数返回值类型
函数的返回值就是通过函数调用使主调函数能得到一个确定的值,通常用return语句来实现值的返回。
指定函数参数名字和类型
形式参数和实际参数:
形式参数:在定义函数时,函数名后面括号中的变量称为“形式参数”(简称形参);
实际参数:在主调函数中,函数名后面括号中的参数(可以 是一个表达式)称为实际参数(简称实参);
练习:从键盘输入三个数abc,求ax^2+bx+c=0的平方根
float a;
float b;
float c;
float d;
printf("请输入三个数,求他们的平方根:");
scanf("%f%f%f",&a,&b,&c);
if(a!=0&&b*b-4*a*c>0){
d=b*b-4*a*c;
printf("%f,%f",(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a));
}else if(b*b-4*a*c==0){
printf("%f",-b/(2*a));
}else{
printf("这里没有根");
}