用c语言编写程序:求矢量的叉积?
用矢量乘法求叉积
[解决办法]
定义一个vector结构体表示向量,然后按照数学方法求就可以了。
[解决办法]
这里是二维向量:
- C/C++ code
#include <stdio.h>#include <stdlib.h>struct vector{ int x; int y;};int inner(struct vector a, struct vector b){ return a.x * b.x + a.y * b.y;}int main(){ struct vector a, b; a.x = a.y = 1; b.x = b.y = 2; printf("%d", inner(a, b)); return 0;}
[解决办法]
2楼的那个好像不是叉积吧??
[解决办法]
向量几何
[解决办法]
点积=内积=数量积
叉积=外积=向量积
- C/C++ code
struct Vector{ double x; double y; double z;};double inner(Vector vA, Vector vB){ return vA.x * vB.x + vA.y * vB.y + vA.z * vB.z;}bool outer(Vector vA, Vector vB, Vector* vC){ if(0 == vC) return false; vC->x = vA.y * vB.z - vA.z * vB.y; vC->y = vA.z * vB.x - vA.x * vB.z; vC->z = vA.x * vB.y - vA.y * vB.x; return true;}