Только начал изучать C, и было бы здорово, если бы вы могли помочь мне со следующим:
Я только что написал программу, которая сохраняет 4-компонентный вектор, введенный пользователем (используя функцию под названием save_vector
), печатает его (используя функцию с именем print_vector
) и, если какой-либо компонент является отрицательным, он также печатает его со всеми компонентами в абсолютном значении (положительные значения), используя функцию absolute_values
.
Однако, Я не уверен, как заставить работать функцию absolute_values
. Две другие функции работают просто отлично.
Будем рады прочитать любые предложения по улучшению этого куска кода! Спасибо! : -)
#include <stdio.h>
void print_vector(int N,float * V);
void save_vector(int N,float * V);
void absolute_values(int N, float * V);
int main(void)
{
const int n=5;
int i;
float v[n];
puts("Enter the 5 components of the vector:");
save_vector(n, v);
puts("\nThe vector is:");
print_vector(n, v);
puts("\nThe absolute vector is:");
absolute_values(n, v);
return 0;
}
void save_vector(int N, float * V)
{
int i;
for(i=0;i<N;i++)
scanf("%f",V+i);
}
void print_vector(int N, float * V)
{
int i;
for(i=0;i<N;i++)
printf(" %.2f ",*(V+i));
}
void absolute_values(int N, float * V)
{
int i;
for(i=0;i<N;i++)
if (*(v+i)<0)
v[i]=v[i]*(-1);
printf(" %.2f ",*(V+i));
}