如何从输入中获取一些未知数量的整数并在控制台上显示它们?
值的数量将通过控制台提供。
答案 0 :(得分:2)
主要的原型是: 主要(无效)或 main(int argc,char * argv []);
这是程序的命令行参数 你可以用这些东西来迭代它们
int i = 0;
for (i=0; i < argc; i++) {
printf("%s" argv[i]);
}
未经测试,但应该足以让你前进。
答案 1 :(得分:0)
您可以使用malloc为数字动态分配内存。
int count=0;
scanf("%d",&count);
int* numbers=malloc(sizeof(int)*count);
//take integers from input here
free(numbers);
答案 2 :(得分:0)
通常你的主要方法应该是这样的
int main(int argc, char** argv)
当你运行你的程序时,你会提供一些参数,比如n个数字,所以你总共会得到n + 1个参数(回想一下你的程序名是参数0!)。因此你可以做类似的事情:
int* array = malloc(sizeof(int) * (argc-1));
int i;
for (i = 0; i < argc-1; i++) {
array[i] = atoi(argv[i+1]);
}
然后你可以这样做:
for (i = 0; i < argc-1; i++) {
printf("%d ", array[i]);
}
抱歉,如果有任何语法错误
希望这会有所帮助
答案 3 :(得分:0)
随时随地打印(忽略第一个:数字的数量)
int main(void) {
<READ_NUMBER>; // and promptly ignore it
while (<READ_NUMBER>) {
printf(<PRINT_NUMBER_JUST_READ>);
}
return 0;
}