所以,我已经使这个代码在数组上输入一些值,然后加倍然后打印。问题是,据我所知,代码中没有错误,但是当我运行它时,它让我要求输入一个超出我要求的值(在这种情况下,当我需要时它会问我5个值)有人能帮帮我吗? (抱歉英语不好:P)
#include <stdio.h>
#include <cstdlib>
#define lim 4
void input(int arr[], int size);
void multiply(int arr[], int size);
void print(int arr[], int size);
int main(){
int array[lim];
printf("Insert numbers in array: \n \n");
input(array,lim);
multiply(array,lim);
printf("Printing values after multiplying: \n \n");
print(array,lim);
system("pause");
return 0;
}
void input(int arr[], int size){
for (int i = 0;i < size; i++){
scanf("%d \n", &arr[i]);
}
}
void multiply(int arr[], int size){
for (int i = 0; i < size; i++){
arr[i] *= 2;
}
}
void print(int arr[], int size){
for(int i = 0;i < size; i++){
printf("%d \n", arr[i]);
}
}