C programs using while loop
1.write a c Program to Count the
Number of Digits
#include <stdio.h>
main() {
int n;
int
count = 0;
printf("Enter
an integer: ");
scanf("%lld",
&n);
//
iterate until n becomes 0
//
remove last digit from n in each iteration
//
increase count by 1 in each iteration
while (n
!= 0) {
n
/= 10; // n = n/10
++count;
}
printf("Number
of digits: %d", count);
}
Output
Enter an integer: 3452
Number of digits: 4
2.Write a c program to find the
reversed number
#include <stdio.h>
int main() {
int n,
rev = 0, remainder;
printf("Enter
an integer: ");
scanf("%d",
&n);
while (n
!= 0) {
remainder
= n % 10;
rev
= rev * 10 + remainder;
n
/= 10;
}
printf("Reversed
number = %d", rev);
return
0;
}
Output
Enter an integer: 2345
Reversed number = 5432
3.write a c program to find the
power
#include <stdio.h>
int main() {
int
base, exp;
int
result = 1;
printf("Enter
a base number: ");
scanf("%d",
&base);
printf("Enter
an exponent: ");
scanf("%d",
&exp);
while
(exp != 0) {
result
*= base;
--exp;
}
printf("Answer
= %lld", result);
return
0;
}
Output
Enter a base number: 3
Enter an exponent: 4
Answer = 81
4.write a c program to
Check Palindrome
#include <stdio.h>
main() {
int n,
reversedN = 0, remainder, originalN;
printf("Enter an integer: ");
scanf("%d", &n);
originalN =
n;
// reversed
integer is stored in reversedN
while (n !=
0) {
remainder = n % 10;
reversedN = reversedN * 10 + remainder;
n /= 10;
}
// palindrome
if orignalN and reversedN are equal
if (originalN
== reversedN)
printf("%d is a palindrome.", originalN);
else
printf("%d is not a palindrome.", originalN);
}
Output
Enter an integer: 1001
1001 is a palindrome
5. write a c program to find the
prime numbers from a interval
#include <stdio.h>
main() {
int low, high,
i, flag;
printf("Enter
two numbers(intervals ");
scanf("%d
%d", &low, &high);
printf("Prime
numbers are %d %d", low, high);
while (low
< high) {
flag
= 0;
//
ignore numbers less than 2
if
(low <= 1) {
++low;
continue;
}
//
if low is a non-prime number, flag will be 1
for
(i = 2; i <= low / 2; ++i) {
if
(low % i == 0) {
flag
= 1;
break;
}
}
if
(flag == 0)
printf("%d
", low);
//
to check prime for the next number
//
increase low by 1
++low;
}
}
Output
Enter two numbers(intervals): 20
50
Prime numbers between 20 and 50
are: 23 29 31 37 41 43 47
6.write
a c program to Check Armstrong Number of three digits
#include <stdio.h>
main() {
int num,
originalNum, remainder, result = 0;
printf("Enter
a three-digit integer: ");
scanf("%d",
&num);
originalNum
= num;
while
(originalNum != 0) {
//
remainder contains the last digit
remainder
= originalNum % 10;
result
+= remainder * remainder * remainder;
//
removing last digit from the orignal number
originalNum
/= 10;
}
if
(result == num)
printf("%d
is an Armstrong number.", num);
else
printf("%d
is not an Armstrong number.", num);
}
Output
Enter a three-digit integer: 371
371 is an Armstrong number.
Darun
ReplyDelete