c - 质数如果有错误

标签 c if-statement

//Prime test
    if(iSelectedOp == 6 )
    {
        printf("Enter positive integer to be tested: \n");
        scanf("%d", &dInteger1);
        int i;
        int f;
        for (i= 2; i < 10; i++)
        {
            if (num1 % i == 0);
                f++;
                printf("%d is prime\n", dInteger1);
            else    
                printf("no prime\n");
            }

    }

嘿大家,我这里有一个函数,它接受输入数字并告诉用户它是否是素数。我收到一条错误,提示我有一个 else 而没有前面的 if。我确信这是我缺少的一些语法。有什么想法吗?

最佳答案

内部 if 后面有多个语句,因此需要括号

if (num1 % i == 0)
{
    f++;
    printf("%d is prime\n", dInteger1);
}
else    
    printf("no prime\n");

此外,if 后面还有一个额外的分号。

为了避免混淆并使代码更易于阅读,我通常会使用 {},无论是否需要它们。不过,这是一种风格,并不是绝对必要的。

if (num1 % i == 0)
{
    f++;
    printf("%d is prime\n", dInteger1);
}
else    
{
    printf("no prime\n");
}

关于c - 质数如果有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25925220/

相关文章:

c - strcmp 在 while 循环中不起作用

javascript - 如何优化 3 个条件 if else if 语句

c - 实现共享库/模块 - 参数结构不在 header 中

c - GCC 对待 int i=048;作为一个错误,为什么 GCC 不能更智能呢?

c - 带有 while 循环和 if 语句的函数的时间复杂度

python - 通过一些检查获取一组数字之间的原始输入

javascript - 在两个数组中查找匹配值

c# - 用于多平台大型软件开发的编程语言?

java - 无法让 charAt(0) 工作

sql - PostgreSQL "IF"语法错误