#include <stdio.h>
#include <stdlib.h>
int main( void )
{
int i, m, max = 100 ;
//creating a large enough array to store user inputs
int * array
= malloc ( sizeof ( int ) * max
) ;
//check if memory was allocated or not
if ( array == NULL)
{
printf ( "memory allocation problem!" ) ; }
//integer to make note of size of array or you can use the sizeof() function instead
int size_of_array = 0 ;
for ( i = 0 ; i < max; i++ )
{
printf ( "Fill the table with integers: " ) ;
if ( scanf ( "%d" , & m
) != 1 ) //check for `scanf` {
char consume;
printf ( "wrong input, try again\n " ) ; i--;
continue ;
}
if ( m > 0 ) //if positive number, accept
{
array[ i] = m;
size_of_array++;
}
else //else break out of scanning
{
break ;
}
}
//do the program.....
//don't for get to free the memory at the end
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCmludCBtYWluKHZvaWQpIAp7CglpbnQgaSwgbSwgbWF4ID0gMTAwOwoJCiAgICAvL2NyZWF0aW5nIGEgbGFyZ2UgZW5vdWdoIGFycmF5IHRvIHN0b3JlIHVzZXIgaW5wdXRzCiAgICBpbnQgKmFycmF5ID0gbWFsbG9jKHNpemVvZihpbnQpICogbWF4KTsgCiAgICAKICAgIC8vY2hlY2sgaWYgbWVtb3J5IHdhcyBhbGxvY2F0ZWQgb3Igbm90ICAgIAogICAgaWYoYXJyYXkgPT0gTlVMTCkKICAgIHsKICAgICAgICBwcmludGYoIm1lbW9yeSBhbGxvY2F0aW9uIHByb2JsZW0hIik7CiAgICAgICAgZXhpdCgxKTsKICAgIH0KCiAgICAvL2ludGVnZXIgdG8gbWFrZSBub3RlIG9mIHNpemUgb2YgYXJyYXkgb3IgeW91IGNhbiB1c2UgdGhlIHNpemVvZigpIGZ1bmN0aW9uIGluc3RlYWQKICAgIGludCBzaXplX29mX2FycmF5ID0gMDsKCiAgICBmb3IgKGkgPSAwOyBpIDwgbWF4OyBpKyspCiAgICB7CiAgICAgICAgcHJpbnRmKCJGaWxsIHRoZSB0YWJsZSB3aXRoIGludGVnZXJzOiAiKTsKCiAgICAgICAgaWYoc2NhbmYoIiVkIiwgJm0pICE9IDEpIC8vY2hlY2sgZm9yIGBzY2FuZmAKICAgICAgICB7CiAgICAgICAgCWNoYXIgY29uc3VtZTsKICAgICAgICAgICAgcHJpbnRmKCJ3cm9uZyBpbnB1dCwgdHJ5IGFnYWluXG4iKTsKICAgICAgICAgICAgc2NhbmYoIiVjIiwgJmNvbnN1bWUpOwogICAgICAgICAgICBpLS07CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KCiAgICAgICAgaWYgKG0gPiAwKSAvL2lmIHBvc2l0aXZlIG51bWJlciwgYWNjZXB0CiAgICAgICAgewogICAgICAgICAgICBhcnJheVtpXSA9IG07CiAgICAgICAgICAgIHByaW50ZigiYVslZF0gPSAlZFxuIixpLG0pOwogICAgICAgICAgICBzaXplX29mX2FycmF5Kys7CiAgICAgICAgfQogICAgICAKICAgICAgICBlbHNlICAgICAgIC8vZWxzZSBicmVhayBvdXQgb2Ygc2Nhbm5pbmcKICAgICAgICB7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KCiAgICAvL2RvIHRoZSBwcm9ncmFtLi4uLi4KCiAgICAvL2Rvbid0IGZvciBnZXQgdG8gZnJlZSB0aGUgbWVtb3J5IGF0IHRoZSBlbmQKICAgIGZyZWUoYXJyYXkpOwp9Cg==