11-0. 平面向量加法(10)
本题要求编写程序,计算两个二维平面向量的和向量。
输入格式:
输入在一行中按照“x1 y1 x2 y2”的格式给出两个二维平面向量V1=(x1, y1)和V2=(x2, y2)的分量。
输出格式:
在一行中按照“(x, y)”的格式输出和向量,坐标输出小数点后1位(注意不能输出-0.0)。
输入样例:
3.5 -2.7 -13.9 8.7
输出样例:
(-10.4, 6.0)
1 #include <stdio.h> 2 #include <string.h> 3 4 struct data{ 5 double x[2]; 6 double y[2]; 7 }dat; 8 9 struct data *input(); 10 11 int main() 12 { 13 input(&dat); 14 15 double dat_x = dat.x[0] + dat.x[1]; 16 double dat_y = dat.y[0] + dat.y[1]; 17 if(dat_x > -0.05 && dat_x < 0.05) { //四舍五入 18 dat_x = 0.0; 19 } 20 if(dat_y > -0.05 && dat_y < 0.05) { 21 dat_y = 0.0; 22 } 23 printf("(%.1lf, %.1lf)", dat_x, dat_y); 24 25 return 0; 26 } 27 28 struct data *input(struct data *da) 29 { 30 scanf("%lf %lf %lf %lf", &(da->x[0]), &(da->y[0]), &(da->x[1]), &(da->y[1])); 31 32 return da; 33 }