输入用空格分隔的整数,并将它们传递给整数数组

时间:2019-02-15 18:15:00

标签: c arrays input

我正在尝试用C编写程序,其中用户输入由空格分隔的定义数量的整数(在本例中为5个整数)。然后,将输入存储在int数组中,最后,可以将其存储在char数组中。

作为要求程序输入时该程序如何工作的示例:

Input: 20 5 63 4 127

程序的输出应为:

Output: 20 5 63 4 127

这是我到目前为止编写的内容,但是我不知道如何将输入转换为int数组。请注意,我事先知道输入的长度(在这种情况下,如上所述,为5 int)。

// Input: 20 5 63 4 127


// Ask for user input.

// Store the input in this int array.
int input_int_array[5];

unsigned char char_array[5];

for(int i=0;i<5;i++)
{
    char_array[i]=input_int_array[i];

    printf("%d ", char_array[i]);
}

// Should print: 20 5 63 4 127

1 个答案:

答案 0 :(得分:0)

您可能希望使用scanf()将用户输入作为整数读入int的数组中:

#include <stdio.h>

int main() {
    int input_int_array[5];

    // Ask for user input.
    printf("input 5 numbers: ");
    for (int i = 0; i < 5; i++) {
        // Store the input into the array.
        if (scanf("%d", &input_int_array[i]) != 1)
            return 1;
    }

    // Output the contents of the array:
    for (int i = 0; i < 5; i++) {
        printf("%d ", input_int_array[i]);
    }
    printf("\n");
    return 0;
}