编写程序以处理正整数可以根据不同的任务需求而变化。以下是一些常见任务的示例代码:
从键盘输入正整数n
```c
include
int main() {
int n;
printf("请输入一个正整数: ");
scanf("%d", &n);
printf("您输入的正整数是: %d\n", n);
return 0;
}
```
计算从2到n之间的所有完全数
```c
include
void main() {
int i, j, k, n;
printf("请输入一个正整数n: ");
scanf("%d", &n);
for (i = 2; i <= n; i++) {
k = 0;
for (j = 1; j <= i - 1; j++)
if (i % j == 0)
k += j;
if (k == i)
printf("%d\n", i);
}
}
```
计算一个正整数的阶乘
```c
include
double fun(int n) {
double result = 1.0;
for (int i = 1; i <= n; i++)
result *= i;
return result;
}
int main() {
int n;
printf("请输入一个正整数: ");
scanf("%d", &n);
printf("阶乘结果为: %.0lf\n", fun(n));
return 0;
}
```
计算有多少对质数的和等于输入的正整数
```c
include include bool isPrimeNumber(int num) { if (num <= 1) return false; if (num == 2) return true; for (int i = 2; i * i <= num; i++) { if (num % i == 0) return false; } return true; } int main() { int num, sum = 0; printf("请输入一个正整数(小于1000): "); scanf("%d", &num); if (num >= 1000) { printf("输入错误,请输入小于1000的正整数。\n"); return 1; } for (int i = 2; i <= num / 2; i++) { if (isPrimeNumber(i) && isPrimeNumber(num - i)) { sum++; } } printf("和为%d的正整数对数有: %d\n", num, sum); return 0; } ``` ```c include int sumOfDigits(int n) { int sum = 0; while (n > 0) { sum += n % 10; n /= 10; } return sum; } int main() { int n; printf("请输入一个正整数: "); scanf("%d", &n); printf("各位数字之和为: %d\n", sumOfDigits(n)); return 0; } ``` 这些示例展示了如何编写程序来处理正整数,包括输入、输出、计算和判断质数等。根据具体需求,可以进一步修改和扩展这些代码。输入一个正整数,输出其各位数字之和