C语言实现norm函数
时间: 2024-09-14 17:04:56 浏览: 108
erf()函数C语言代码
5星 · 资源好评率100%
C语言本身并没有内置的`norm`函数,这个术语通常用于表示向量的范数或者是数字的标准化,比如矩阵、向量的L2范数等。如果你需要计算一个向量的L2范数,即每个元素平方和后再开根号,可以编写如下的自定义函数:
```c
#include <stdio.h>
#include <math.h> // 引入数学库,包含sqrt函数
double norm(double* vector, int size) {
double sum = 0.0;
for (int i = 0; i < size; i++) {
sum += pow(vector[i], 2); // 平方和
}
return sqrt(sum); // 开方得到范数
}
// 示例用法
int main() {
double vector[] = {1.5, 2.0, 3.5};
int size = sizeof(vector) / sizeof(vector[0]);
printf("Vector norm: %.2f\n", norm(vector, size));
return 0;
}
```
在这个例子中,`norm`函数接受一个指向数组的指针和大小作为参数,然后遍历数组计算每个元素的平方和,并返回其平方根作为范数。
阅读全文