#include <stdio.h>
#include <stdlib.h>
typedef struct int_node IntNode;
struct int_node {
int val;
IntNode *next;
};
typedef struct int_list IntList;
struct int_list {
IntNode *front;
};
void multiply_by(IntList *list_ptr, int m);
int main(void) {
IntList list = create_list();
insert_back(&list, 10);
insert_back(&list, 71);
insert_back(&list, 9);
print_list(&list);
free_list(&list);
insert_back(&list, 5);
insert_back(&list, 6);
insert_back(&list, 7);
insert_back(&list, 8);
free_list(&list);
return 0;
}
void multiply_by(IntList *list_ptr, int m) {
IntNode *current_node = list_ptr->front;
//Need Help
}
好的,我创建了一个函数multiply_by
,它将使用一个指向整数列表的指针和一个整数值作为附加参数。函数必须将列表中的每个元素乘以值。但我不确定我是否使用array[]来实现这一点,或者我应该如何对所有元素进行乘法运算?有人能给我举个例子或建议吗?也许是例子?
您应该将每个节点中的数据乘以作为参数传递的数字:
void multiply_by(IntList *list_ptr, int m) {
IntNode *current_node = list_ptr->front;
while (current_node) {
current_node->val *= m;
current_node = current_node->next;
}
}