У меня есть несколько вопросов о массивах в C. Я впервые использую и изучаю c и использую ubuntu. Не обращайте внимания на вопросительный знак в начале. Пока это просто пробел.
Номер один правильный.
Число два, если значение i
в массиве меньше или равно 7
, тогда i
умножьте его на постоянную Эйлера, используя M_E
в math.h
и если оно больше 7
I преобразовать его в абсолютное значение. Я почти уверен, что сделал эту часть правильно, если не приветствуется обратная связь.
Номер три Я должен преобразовать все значения с плавающей точкой в f_array в int
и поместить его в i_array
. Я использую функцию раунда, чтобы сделать это. Я не знаю, был ли это правильный подход к этому. Я думаю, что могу удалить второй шаг j
и просто использовать i
для f_array
и i_array
, но я не уверен на 100%
int main(int argc, char *argv[]) {
// Local variables
// NOTE: this is where you will want to add some new variables
float f_array[20];
int i_array[20], m_array[25];
???
// Step #1 - read in the float numbers to process
for (i=0; i<20; i++) {
scanf("%f", &f_array[i]);
}
// Step #2 - convert the input values
for (i=0; i<20; i++){
if (f_array[i] <= 7){
i = i*M_E;
}
if (f_array[i] > 7){
i = abs(i);
}
}
// Step #3 - convert the floating point values to integers
for (i=0; i<20; i++){
for (j=0; j<20; j++){
old = f_array[i]
new = round(old)
i_array[j] = new
}
}