将一个正整数分解质因数
代码部分:
#include
int main()
{
int n, i; // 定义变量n用于存储用户输入的整数,i用于循环计数
printf("请输入整数:"); // 提示用户输入一个整数
scanf("%d", &n); // 读取用户输入的整数,并存储在变量n中
printf("%d=", n); // 输出等式,后面跟着用户输入的整数
// 从2开始循环到n,找出n的所有质因数
for(i = 2; i <= n; i++)
{
// 只要n能被i整除,就打印i,并更新n
while(n % i == 0)
{
printf("%d", i); // 打印当前的质因数i
n /= i; // 更新n,除以i
if(n != 1) printf("*"); // 如果n不是1,打印乘号,因为后面还有质因数
}
}
printf("\n"); // 输出换行
return 0; // 程序结束,返回0表示成功
}
知识点总结:
1. **输入输出函数**:使用`printf`和`scanf`函数进行输入输出操作。
2. **循环控制**:使用`for`循环来遍历可能的质因数。
3. **条件判断**:使用`while`循环和`if`语句来判断和处理质因数。
4. **取模和除法**:使用`%`运算符来检查整除,使用`/`运算符来更新n的值。
代码部分:
#include
int main()
{
int n, i; // 定义变量n用于存储用户输入的整数,i用于循环计数
printf("请输入整数:"); // 提示用户输入一个整数
scanf("%d", &n); // 读取用户输入的整数,并存储在变量n中
printf("%d=", n); // 输出等式,后面跟着用户输入的整数
// 从2开始循环到n,找出n的所有质因数
for(i = 2; i <= n; i++)
{
// 只要n能被i整除,就打印i,并更新n
while(n % i == 0)
{
printf("%d", i); // 打印当前的质因数i
n /= i; // 更新n,除以i
if(n != 1) printf("*"); // 如果n不是1,打印乘号,因为后面还有质因数
}
}
printf("\n"); // 输出换行
return 0; // 程序结束,返回0表示成功
}
知识点总结:
1. **输入输出函数**:使用`printf`和`scanf`函数进行输入输出操作。
2. **循环控制**:使用`for`循环来遍历可能的质因数。
3. **条件判断**:使用`while`循环和`if`语句来判断和处理质因数。
4. **取模和除法**:使用`%`运算符来检查整除,使用`/`运算符来更新n的值。
全部评论
相关推荐
点赞 评论 收藏
分享
06-27 18:45
中山大学 Ruby 点赞 评论 收藏
分享