自己看找不到错的地方

定义一个变量,随机从键盘上输入一个数给到变量,判断其是否为素数,是则将其除以3并保留2位小数后输出

#include
int main()
{
int a,b;
printf("请输入一个大于1的整数");
scanf("%d",&a,);
b=2;
if(a%b!=0)
{
b++;
}
if (b==a)
break;
printf("%4.2f",a/3)

return 0;
}

当被除数和除数都是整数时,并不会得到一个double的浮点型的数,而是直接舍去小数部分(即向下取整)

if条件那这样改
if(a除了1和本身还有其他的因子&&a>=2) 因为 素数要大于1开始
printf(“输出保留两位小数的格式”)
else
printf(“不是素数”)
不建议的话 可以看一下这篇文章http://t.csdn.cn/JWFzO (素数判定及其求法)

素数是这么判断的吗?

供参考:

#include <stdio.h>
int main()
{
    int n,i,flg = 0;
    scanf("%d", &n);
    if (n <= 1){
        flg = 1;
    }
    else{
        for (i = 2;i < n; i++)
            if (n % i == 0){
                flg = 1;
                break;
            }
    }
    if (!flg)
        printf("%.2f",(float)n / 3.0);
    return 0;
}