有许多经典的程序被广泛传播和学习。下面列举了18个C语言必背的经典程序,\n");}这是C语言中最简单的程序,printf("Sum is %d\n",sum);这个程序演示了如何使用变量和运算符求两个数的和。printf("Enter a number:scanf("%d",&num);} else {printf("%d is odd\n",num);
问题:C语言必背18个经典程序,你知道有哪些吗?
回答:
C语言作为一门广泛应用的编程语言,有许多经典的程序被广泛传播和学习。下面列举了18个C语言必背的经典程序,供大家参考学习。
1. Hello World程序:
#include
int main() {
printf("Hello World!\n");
return 0;
}
这是C语言中最简单的程序,用于输出"Hello World!"。
2. 求两个数之和:
int a = 5, b = 3, sum;
sum = a + b;
printf("Sum is %d\n", sum);
这个程序演示了如何使用变量和运算符求两个数的和。
3. 判断一个数是奇数还是偶数:
int num;
printf("Enter a number: ");
scanf("%d", &num);
if (num % 2 == 0) {
printf("%d is even\n", num);
} else {
printf("%d is odd\n", num);
}
这个程序通过使用条件语句if-else来判断一个数是奇数还是偶数。
4. 求一个数的阶乘:
int num, i;
unsigned long long factorial = 1;
printf("Enter a positive integer: ");
for (i = 1; i <= num; ++i) {
factorial *= i;
printf("Factorial of %d = %llu\n", num, factorial);
这个程序使用循环语句for来计算一个数的阶乘。
5. 判断一个数是否为质数:
int num, i, isPrime = 1;
for (i = 2; i <= num / 2; ++i) {
if (num % i == 0) {
isPrime = 0;
break;
}
if (isPrime == 1) {
printf("%d is prime\n", num);
printf("%d is not prime\n", num);
这个程序使用循环和条件语句来判断一个数是否为质数。
6. 求斐波那契数列:
int n, i, t1 = 0, t2 = 1, nextTerm;
printf("Enter the number of terms: ");
scanf("%d", &n);
printf("Fibonacci Series: ");
for (i = 1; i <= n; ++i) {
printf("%d, ", t1);
nextTerm = t1 + t2;
t1 = t2;
t2 = nextTerm;
这个程序使用循环来生成斐波那契数列。
7. 求最大公约数:
int n1, n2, i, gcd;
printf("Enter two positive integers: ");
scanf("%d %d", &n1, &n2);
for (i = 1; i <= n1 && i <= n2; ++i) {
if (n1 % i == 0 && n2 % i == 0) {
gcd = i;
printf("GCD of %d and %d is %d\n", n1, n2, gcd);
这个程序使用循环和条件语句来求两个数的最大公约数。
8. 判断一个数是否为回文数:
int n, reversedN = 0, remainder, originalN;
printf("Enter an integer: ");
originalN = n;
while (n != 0) {
remainder = n % 10;
reversedN = reversedN * 10 + remainder;
n /= 10;
if (originalN == reversedN) {
printf("%d is a palindrome\n", originalN);
printf("%d is not a palindrome\n", originalN);
这个程序使用循环和条件语句来判断一个数是否为回文数。
9. 求一个数的平方根:
#include
double num, squareRoot;
scanf("%lf", &num);
squareRoot = sqrt(num);
printf("Square root of %.2lf = %.2lf\n", num, squareRoot);
这个程序使用数学库中的sqrt函数来求一个数的平方根。
10. 求一个数的倒数:
#include
int main() {
float num, reciprocal;
printf("Enter a number: ");
scanf("%f", &num);
reciprocal = 1 / num;
printf("Reciprocal of %.2f = %.2f\n", num, reciprocal);
return 0;
}
这个程序演示了如何求一个数的倒数。
11. 判断一个年份是否为闰年:
int year;
printf("Enter a year: ");
scanf("%d", &year);
if (year % 4 == 0) {
if (year % 100 == 0) {
if (year % 400 == 0) {
printf("%d is a leap year\n", year);
} else {
printf("%d is not a leap year\n", year);
}
} else {
printf("%d is a leap year\n", year);
}
} else {
printf("%d is not a leap year\n", year);
}
这个程序使用嵌套的条件语句来判断一个年份是否为闰年。
12. 求两个数的最小公倍数:
int n1, n2, max;
printf("Enter two positive integers: ");
scanf("%d %d", &n1, &n2);
max = (n1 > n2) ? n1 : n2;
while (1) {
if (max % n1 == 0 && max % n2 == 0) {
printf("LCM of %d and %d is %d\n", n1, n2, max);
break;
++max;
这个程序使用循环和条件语句来求两个数的最小公倍数。
13. 求一个数的立方:
int num, cube;
scanf("%d", &num);
cube = num * num * num;
printf("Cube of %d = %d\n", num, cube);
这个程序演示了如何求一个数的立方。
14. 判断一个数是否为完全数:
int num, sum = 0, i;
printf("Enter a positive integer: ");
for (