View Code of Problem 99

#include<stdio.h>

int main()
{
	char s[20];
	gets(s);
	while(s[0] != '0')
	{
		int a = 0, b = 0, c = 0;
		int i;
		for(i = 0; s[i] != ' ' && s[i] != '\0'; i++)
		{
			a *= 10;
			a += s[i] - 48;
		}
		if(s[i] == ' ')
			i++;
		for(; s[i] != ' ' && s[i] != '\0'; i++)
		{
			b *= 10;
			b += s[i] - 48;
		}
		if(s[i] == ' ')
			i++;
		for(; s[i] != '\0'; i++)
		{
			c *= 10;
			c += s[i] - 48;
		}
		if(c)
		{
			c++;
			if(a < b)
			{
				for(int j = a; j <= b; j += c)
				if(j == a)
					printf("%d", j);
				else
					printf(" %d", j);
			}
			else
			{
				for(int j = a; j >= b; j -= c)
				if(j == a)
					printf("%d", j);
				else
					printf(" %d", j);
			}
			
		}
		else if(b)
		{
			if(a > b)
			{
				for(int j = a; j >= b; j--)
				if(j == a)
					printf("%d", j);
				else
					printf(" %d", j);
			}
			else
			{
				for(int j = a; j <= b; j++)
				if(j == a)
					printf("%d", j);
				else
					printf(" %d", j);
			}
		}
		else
		{
			for(int j = 1; j <= a; j++)
				if(j == 1)
					printf("%d", j);
				else
					printf(" %d", j);
		}
		printf("\n");
		gets(s);
	}
	return 0;
}

Double click to view unformatted code.


Back to problem 99