判断一个数是偶数还是素数 做相应处理并排序输出

Posted L的存在

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断一个数是偶数还是素数 做相应处理并排序输出相关的知识,希望对你有一定的参考价值。

 1 //有10个两位整数,把这些数作以下变化,如果它是素数,
 2 //则把它乘以2,若它是偶数则除以2,其余的数减1,
 3 //请将变化后的10个数按从小到大的次序打印出来。
 4 //2017.3.7
 5 #include <stdio.h>
 6 #include <stdlib.h>
 7 #include <math.h>
 8 /*
 9 判断整数n是否为质数
10 */
11 int isPrimeNum(int n)
12 {
13     int isPrime = 1;//作为标记 是素数则为1 否0
14     if (n == 1)
15     {
16         return 0;
17     }
18     for (int i = 2; i <= (int)(sqrt((double)n)); i++)
19     {
20         if (n % i == 0)
21         {
22             isPrime = 0;
23             break;
24         }
25     }
26     return isPrime;
27 }
28 /*
29 冒泡法实现数组排序
30 */
31 void sort23(int *a, int n)
32 {
33     
34     for (int i = 0; i < n - 1; i++)
35     {
36         for (int j = 0; j < n - 1 - i; j++)
37         {
38             if (a[j] > a[j + 1])
39             {
40                 a[j] = a[j] ^ a[j + 1];
41                 a[j + 1] = a[j] ^ a[j + 1];
42                 a[j] = a[j] ^ a[j + 1];
43             }
44         }
45     }
46 }
47 void main()
48 {
49     
50     int a[10];
51     for (int i = 0; i < 10; i++)
52     {
53         a[i] = 11 + rand()%100;
54         if (isPrimeNum(a[i]))
55         {
56             a[i] *= 2;
57         }
58         else if (a[i] % 2 == 0)
59         {
60             a[i] /= 2;
61         }
62         else
63         {
64             a[i] -= 1;
65         }
66     }
67 
68     sort23(a, 10);
69     for (int i = 0; i < 10; i++)
70     {
71         printf("%-5d", a[i]);
72     }
73     printf("\\n");
74     system("pause");
75 }

以上是关于判断一个数是偶数还是素数 做相应处理并排序输出的主要内容,如果未能解决你的问题,请参考以下文章

输入 10 个整数,将这 10 个数按升序排列,并且奇数在前偶数在后?

判断一个数是否是素数

C语言中判断N个数中的素数并求和

代码实现:判断101-200之间有多少个素数(质数),并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

shell编程,读取一个数,判断这个数是奇数还是偶数

C++判断素数的代码