gpt4 book ai didi

c++ - 询问比要求更多的元素

转载 作者:太空宇宙 更新时间:2023-11-04 12:57:02 25 4
gpt4 key购买 nike

所以,我编写了这段代码来在数组中输入一些值,将其加倍然后打印。问题是,据我所知,代码中没有错误,但是当我运行它时,它一直要求我输入一个超出我要求的值(在这种情况下,它会在我需要时询问我 5 个值4.有人可以帮助我吗?(抱歉英语不好 :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]);
}
}

最佳答案

scanf()函数在尝试解析字符以外的内容( %c%[…]%n )之前自动 删除空格,因此您不必像现在这样跳过它们尝试%d \n .

只读数字,不关心它们。

scanf("%d", &arr[i]);
// ^^^^

您还在 中编码,有不同的(更简单的)IO 操作,首先你必须包括 <iostream> .

然后,为了阅读,您可以使用 std::cin

int i{0};
std::cin >> i;

并通过 std::cout 打印

std::cout << i;

Here您可能会获得有关它们的更多信息。

关于c++ - 询问比要求更多的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46084712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com