[1002]prime

输入一个数,判断其是否为素数;测试

本题有多组测试样例。blog

输入规则以下:io

第一行为一个整数,样例组数T;class

第二至第t+1行每行都有一个整数a(a >= 2),表示须要处理的数;数据

 

若是是素数则输出“yes”,不然输出“no”,每一个样例的输出占1行;di

 

输入输出样例:时间

输入:while

2return

99printf

17

输出:

no

yes

 

 

就是判断素数问题,原本我是想用sqrt的,可是不知道为何过不了,因此就用了\2,原本用前者是可以减小时间的,不过检测数据小,都没有关系

#include<stdio.h>
int main() {
    int t, a, flag = 1;
    scanf("%d", &t);
    while (t--) {
        scanf("%d", &a);
        for (int i = 2; i < a/2; i++) {
            if (a % i == 0) {
                printf("no\n");
                flag = 0;
                break;
            }
        }
        if (flag == 1) {
            printf("yes\n");
        }
        flag = 1;
    }
    return 0;
}

  

 

标程

1.#include <stdio.h>
2. 
3.int main()
4.{
5.    int t, a, i;
6.    scanf("%d", &t);
7.    for (; t > 0; t--)
8.    {
9.        scanf("%d", &a);
10.        for (i = 2; i <= a/2; i++)
11.        {
12.            if (a % i == 0) break;
13.        }
14.        if (i > a/2) printf("yes\n");
15.        else printf("no\n");
16.    }
17.    return 0;
18.}
本站公众号
   欢迎关注本站公众号,获取更多信息