if嵌套使用编成练习

1、提示用户输入数字,计算并显示所有能整除它的约数,如果没有约数则提示该数字为素数,并把整体做成循环
做成循环提示:
int x;
注:while (scanf ("%d", &x) == 1)//用于获取整数输入及在输入非整数时推出循环的条件模拟

一个实现,供参考:


#include <stdio.h>

int main(void){
    
    int x;
    int i;
    int prime=1; //默认是素数 
    int num=0;  //约数个数初始为 0
    printf("请输入要给数字:"); 
    while(scanf("%d",&x)==1){
        
        
        for(i=2;i<x;i++){
            
            if(x%i==0){  //判断能整除的数 
                prime=0;  //说明不是素数 
                printf("%d ",i);  //打印约数 
                num++;   //约数个数加1 
            }
            if(num%5==0){ //每行打印5个约数 
                printf("\n");
            }
        }
         
        if(prime==1){  //打印是否是素数 
            printf("%d是素数。\n",x);
        }
        
        printf("\n请输入要给数字:");   //提示输入下一个要判断的数 
        num=0;   //约数的个数置0 
        prime=1;  //素数标志置0  
    }
    
    return 0;
} 

img