解题思路:判断质数大家都很熟悉啦,判断质因数也是不难的哦,千万别把代码思路想象的很复杂,人人都可以学会的!
注意事项:我觉得难点在于插入*和\n,大家看看代码代入一下数字很简单就能理解,有问题欢迎留言讨论,别忘了点个赞喔
参考代码:
#include <stdio.h> void fenjie(int num){//分解质因数 if(num!=1){ //停止递归的条件num=1 for(int i=2;i<=num;i++){ if(num%i==0){ //找出一个因数 printf("%d",i); if(i!=num) printf("*");//i=num说明是最后一个因数,不加分号 fenjie(num/i);//递归 break;//找出一个因数循环就要赶紧停止,防止找出4,6这种非质数 } } } else printf("\n"); } int zhi(int num){//判断质数 for(int j=2;j<num;j++){ if(num%j==0) return 0;//不是质数 if(j==num-1) return 1;//是质数 } } int main() { int a,b; scanf("%d %d",&a,&b); for(int i=a;i<=b;i++){ if(i==1) printf("1=1\n");//1和2在判断质数函数中不好操作,单独列出来 else if(i==2) printf("2=2\n"); else{ if(zhi(i)) printf("%d=%d\n",i,i);//是质数直接列出来 else{ //不是质数就分解 printf("%d=",i); fenjie(i); } } } return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:638 |
C语言程序设计教程(第三版)课后习题5.7 (C++代码)浏览:855 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:730 |
字符串对比 (C语言代码)浏览:1413 |
C语言程序设计教程(第三版)课后习题6.5 (C语言代码)浏览:631 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:585 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)from DQM浏览:666 |
C二级辅导-同因查找 (C语言代码)浏览:568 |
时间转换 (C语言代码)浏览:627 |
输出九九乘法表 (C语言代码)浏览:1048 |