gpt4 book ai didi

c - 如何在不知道范围的情况下获取多个数字用户输入

转载 作者:行者123 更新时间:2023-11-30 20:37:35 24 4
gpt4 key购买 nike

我想以数字格式输入一些由空格分隔的输入,并将其放入数组中...当我按 Enter 时,应该有一个终止符,并且先前存储的值应该在数组中...

输入格式:1 2 3 4 5{按 Enter} 输出格式:12345

In the above output format...

arr[0]=1 ,arr[1]=2 ,arr[2]=3 ,arr[3]=4 ,arr[4]=5

输入格式:9 8 7 6 5 4 3 2 1{按 Enter} 输出格式:987654321

    #include<stdio.h>
int main()
{

int num[100],a,i,j;
i=0;

while(scanf("%d",&a))
{
num[i]=a;
i++;
}

for(j=0;j<i;j++)
{
printf("%d",num[j]);
}

return 0;
}

上面的代码需要一个非数字值来终止......并且工作正常......!!!

    #include<stdio.h>
int main()
{
int i=1;
char ch,arr[20];

scanf("%c",&ch);
arr[0]=ch;

while (ch != '\n')
{
scanf("%c",&ch);
arr[i]=ch;
arr[i+1]='\0';
i++;
}
printf("%s",arr);

return 0;
}

上面的仅适用于字符输入......并且工作正常......!!!

我希望按 ENTER 后应该终止...对于数字输入

最佳答案

你只需要一个 char 变量

下面是代码:

#include <stdio.h>

int arr[100];

int main()
{
char ch;
int num;
int i = 0, c;
while (scanf("%d%c", &arr[i++], &ch))
if (ch == '\n') break;

for (c = 0; c < i; c++)
printf("%d ", arr[c]);

return 0;
}

关于c - 如何在不知道范围的情况下获取多个数字用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32255633/

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