一.如何使用根号:
引入这个头文件 #include <math.h>
double a = 2;
double b = sqrt(a); 此时b=1.414214.........
在输出开根号的数时,通常需要控制小数的位数,可以这样操作:
printf("%nlf",b);
n为小数位数,lf:double f:float
print("%4lf",b); 此时输出1.4142
二.数组:
数组的定义:在内存中存在一份连续的空间,可以存储多个同类型的数据。
数组长度: 数组最多可以存储的元素个数
读取数组长度可以用sizeof(数组名或变量名)/4; 因为sizeof读取的是字节
数组下标: 用于访问数组中对应位置的元素
下标范围: 0~len-1 超过范围 取的数据存在风险 数据不受到程序的保护控制
格式定义: 数据类型 数组名[长度];
例如: int arr[100]; char x[10];
int arr1[10]={1,2,3,4,5};
int arr2[100]={0}; 数组元素全是0
char name[10]="小明";
char carr[10]={'a','b','c'};
//访问数据:数组名[下标];
例如 int n = arrx[3];
arrx[2]=100;
注意:数组名只是我们代码中的一个名词 代词
数组是内存中一份连续的空间
数组名是存储数组的首地址
数组名就是一个常量,所以不支持初始化赋值之后 再修改
三.读取数组数据时的注意事项
#include<stdio.h> int main(){ int len =0 ; int arr [100] ; int x = 0; for (int i = 0;;i++){ scanf("%d",&x); if(x==0){break;} arr[i] = x; len=i+1; //可以巧借循环来得到数组长度 } for(int e = len-1;e>=0;e--){ printf("%d ",arr[e]); } return 0; }#include<stdio.h> int main(){ int n; scanf("%d",&n); int arr [n]; int arr1[n] ; for(int i = 0;i<n;i++){ //要先重置数组,否则里面全是垃圾数据, //如果不这样,后面的arr1[i]+=1;就不对了 arr[i] = 0; arr1[i] = 0; } for(int i = 0;i<n;i++){ scanf("%d",&arr[i]); } for(int i = 0;i<n;i++){ for(int e = 0;e<i;e++){ if(arr[i]>arr[e]){arr1[i]+=1;} } printf("%d ",arr1[i]); } }