answersLogoWhite

0


Best Answer

C does not prove a built-in function to determine if a number is prime or not, thus we must write one. The implementation is reasonably trivial:

bool is_prime (unsigned int value) {

if (value<2) return false;

if (!(value%2)) return value==2;

unsigned int max_factor, factor;

max_factor = sqrt (value) + 1;

for (factor=3; factor<max_factor; factor+=2)

if (!(value%factor)) return false;

return true;

}

That is; we return false when value is less than 2 (because 2 is the first prime).

If the value is even, we return true if the value is 2 (because 2 is the only even prime).

For all other values greater than 2, we divide the value by increasing odd factors (3, 5, 7, 9, etc) up to the square root of the value. If the value is evenly divisible by any of these (potential) factors, the number cannot be prime so we return false. If none of the potential factors evenly divides into the value, the value is prime so we return true.

Given this function, we can now create another function that will determine the next prime after any given value (the given value need not be prime).

unsigned int next_prime (unsigned int value) {

while (!is_prime (++value));

return value;

}

Here we increment the value until the is_prime() function returns true, at which point we return the value, which is now prime.

Now we can print all the prime numbers from 1 to 100:

int main (void) {

int n;

n=1;

while ((num=next_prime (num))<=100) {

printf ("%d\n", num);

}

return 0;

}

User Avatar

Wiki User

8y ago
This answer is:
User Avatar

Add your answer:

Earn +20 pts
Q: How do you write a C Program to Print all the Prime Numbers between 1 and 100.?
Write your answer...
Submit
Still have questions?
magnify glass
imp
Related questions

Program for print prime all number from 1 to 100 in foxpro?

Prime numbers are numbers that are only divisible by themselves and the number 1. You can write a program to print all prime numbers from 1 to 100 in FoxPro.


Q2 Write a program to print even numbers between 10 and 50?

You can use int i; for (i = 10; i &lt;= 50; i += 2) {//print i} as a program to print even numbers between 10 and 50.


What BASIC program can compute and display all prime numbers from 1 to 40?

PRINT 2,3,5,7,11,13,17,19,23,29,31,37


Write a program to print first 100 alternative prime numbers?

This would require some computer knowledge. It can make it easier to find out the prime numbers without figuring it out in your head.


How can print prime numbers in between 1-100 but not adjust 40-50 in php language?

Use a counted loop in the closed range [1:100]. If the count is in the closed range [40:50], print the number. For all other numbers outwith this range, only print the number if it is prime.


How do you write a program to print numbers to 50 except prime?

First, create a for loop from a,1 to 50. Inside of that create another for loop b,2 to a-1. If a/b=int(a/b) then you know it is not prime


Write a java script program to print first ten odd natural numbers in C?

Q.1 Write a program to print first ten odd natural numbers. Q.2 Write a program to input a number. Print their table. Q.3 Write a function to print a factorial value.


Write a c program to print the 100 to 1 nos?

Write a c program to print the 100 to 1 nos


Write a C program to find the prime numbers from 1 to 300?

/*the program to print prime no from 1 to 300*/ #include&lt;stdio.h&gt; #include&lt;conio.h&gt; void main() { int i,j; clrscr(); printf("The prime numbers from 1 to 300 are\n"); for(j=2;j&lt;=300;j++) { for(i=2;i&lt;=j/2;i++) if(j%i==0) break; if(i&gt;j/2) { printf("%d ",j); } } }


Write a program to print even and odd numbers in between 1 to 10?

for (int i = 2; i < 10; i ++) printf("%d\n", i); You did say even and odd numbers between 1 and 10. That's allnumbers between 1 and 10.


C program to print numbers 1 to n?

how do we use loops in c plus plus programing and what are basic differences between do,for and while loop


Write a C Program to print sum of squares of odd numbers?

#include