2、从键盘输入一个整数n(要求n在100和1000之间),计算并输出整数n的所有因子(?

2、从键盘输入一个整数n(要求n在100和1000之间),计算并输出整数n的所有因子(不包过1和n本身)之和。

1、
#include <stdio.h>
int main() {
int n;
printf("请输入一个100到1000之间的整数:");
scanf("%d", &n);
while (n < 100 || n > 1000) {
printf("输入有误,请重新输入一个100到1000之间的整数:");
scanf("%d", &n);
}
printf("%d的因子有:\n", n);
for (int i = 1; i <= n; i++) {
if (n % i == 0) {
printf("%d\n", i);
}
}
return 0;
}
首先,使用 printf 函数提示用户输入一个整数 n,并使用 scanf 函数从键盘输入这个整数。然后,使用 while 循环检查 n 是否在 100 到 1000 之间,如果不在这个范围内,就提示用户重新输入一个整数。
接下来,使用 for 循环遍历 1 到 n 之间的所有整数,判断它们是否是 n 的因子。如果是,就使用 printf 函数输出这个因子。最后,使用 return 语句结束程序。
2、
#include <stdio.h>
int main() {
int n, sum = 0;
printf("请输入一个100到1000之间的整数:");
scanf("%d", &n);
while (n < 100 || n > 1000) {
printf("输入有误,请重新输入一个100到1000之间的整数:");
scanf("%d", &n);
}
printf("%d的因子(不包括1和本身)之和为:", n);
for (int i = 2; i < n; i++) {
if (n % i == 0) {
sum += i;
}
}
printf("%d\n", sum);
return 0;
}
首先,代码使用scanf函数接收用户输入的一个整数n,如果n不在100到1000之间,则使用while循环要求用户重新输入。
然后,使用for循环计算n的所有因子之和。从2开始循环到n-1,如果i是n的因子,则将其加入到变量sum中。最后,使用printf函数输出结果。
总体而言,该代码是一个简单的数学计算程序,演示了基本的输入、循环和条件判断等C语言语法。
温馨提示:答案为网友推荐,仅供参考
相似回答