1. 程式人生 > >寫一個函式實現輸出 1 -- n 之間的所有迴文素數 如:131 -- 是素數 -- 131 迴文素數

寫一個函式實現輸出 1 -- n 之間的所有迴文素數 如:131 -- 是素數 -- 131 迴文素數

#include <stdio.h>

void ng_ss(int n);
int pd_ss(int n);
int sz_dd(int n);

int main(void)
{
 int t = 0;
 printf("請輸入大於1的整數n:");
 scanf("%d",&t);
 printf("迴文素數分別是:");
 ng_ss(t);
 printf("\n");
 return 0;
}
void ng_ss(int n)
{
  int j,ss = 0,dd = 0,hw = 0;
  for(j = 2;j <= n;j++)
  {
      ss = pd_ss(j); //判斷是不是素數
if(ss == 1) //如果是素數 { dd = sz_dd(j); //顛倒 if(dd == j)//顛倒之後跟原來的一樣,則輸出 { printf(" %d ",j); } } } } int pd_ss(int n) { int i; for(i = 2;i < n; i++) { if(n % i == 0) { return 0; } } return 1; } int sz_dd(int n)//數字顛倒 321 123
{ int m,sum = 0; while(n > 0) { m = n % 10; n = n / 10; sum = sum * 10 + m; } return sum; }

相關推薦

一個函式實現輸出 1 -- n 之間所有素數 131 -- 是素數 -- 131 素數

#include <stdio.h> void ng_ss(int n); int pd_ss(int n); int sz_dd(int n); int main(void) { int t = 0; printf("請輸入大於1的整數n:

輸出1~N之間所有素數

輸出1~N之間所有素數,含N,在控制檯裡每行輸出5個數,並且這五個數之間以一個空格作為分隔 對於1~N範圍內的數,進行整除,直至除到sqrt(N),不能整除的,則是質數 #include<stdio.h> #include<math.h&g

一個函式,隨機生成N條不重複的手機號

方法一:import random def phone(count): results = [] while len(results)!=count: starts = [138,156,130,170,188,189] start = random.ch

輸出1~n之間素數

#include <stdio.h> void swap(int i,int j,int n) { for(i=1;i<=n;i++) { for(j=2;j<i;j++) if(i%j==0) break; if(i

輸入一個數N輸出1-N之間所有素數,要求每行顯示五個數

int main() { int m=0; int i,j,n; scanf(“%d”,&n); for(i=2;i<=n;i++) { for(j=2;j<=i-1;j+

輸入一個數n,程式設計計算輸出1-n之間所有素數之和

#include<stdio.h> int main() { int n,i,j,t,l; int sum=0; printf("請輸入一個大於2的整數:"); scanf("%d",&n); l=n;

JavaScript 用for迴圈輸出1-100之間所有的質數(只能被1和自身整除的數,不包括1

用for迴圈輸出1-100之間所有的質數(只能被1和自身整除的數,不包括1) 也就是說 2 3 5 7 11 。。。等只有被1和自身整除的數字。 如何判斷出1到100的字數呢? 拿  51這個數字舉例  我們可以用for迴圈記錄一下   51%j=0的發生了幾次 這

輸入一個數n,輸出1-n所有素數,要求每行顯示5個數

#include <stdio.h> int main() { int i,j,n,m=0; printf("請輸入一個數"); scanf("%d",&n); for(i=2;i<=n;i++) { for(j=2;j<

輸出1~200之間所有素數

首先,1既不是素數也不是合數 方法一:簡單方法 public class Prime { public static void main(String[] args) { //1既不是素數也不是合數 for (int i = 2; i <= 200; i++

1-N之間所有素數

描述 輸出1-N之間所有的素數。 輸入 一個整數N。(2 <=N <= 10000) 輸出 1-N之間所有的素數,含N,為了便於觀察結果,在控制檯裡每行輸出5個數,並且這五個數之間以一個空格作為分隔。 #include <stdio

描述1-N之間所有素數

題目: 輸出1-N之間所有的素數。 輸入: 一個整數N(2<=N<=10000) 輸出: 1-N之間所有的素數,含有N,為了便於觀察,在控制檯裡每行輸出5個數,並且這5個數之間以一個空格作為分隔。 想法: 1、關於判斷是不是素數,可以通

C語言對長度為7的字符串,除首尾字符外,將其余5個字符按ASCII降序排序。-計算並輸出3~n之間所有素數的平方根之和。

file print font 素數 open stdio.h sca math while //對長度為7的字符串,除首尾字符外,將其余5個字符按ASCII降序排序。 1 #include <stdio.h> 2 #include <ctyp

寫一個函式返回引數二進位制中1的個數+獲取一個數二進位制序列中所有的偶數位和奇數位,分別輸出二進位制序列+輸出一個整數的每一位+兩個int(32位)整數m和n的二進位制表達中,有多少個位(bit)不同

寫一個函式返回引數二進位制中 1 的個數 比如: 15 0000 1111 4 個 1 #include <stdio.h> #include <windows.h> /* 寫一個函式統計一個數二進位制形式下 1 的個數 */ //統計 1 的個數 int C

一個整數n,一個函式f(n),返回0~n之間出現的“1”的個數,例如f(1)=1; f(13)=6(1,10,11,12,13一共6個1),最大的f(n)=nn是多少

import java.util.Arrays; import java.util.LinkedList; import java.util.List; public class learn {   public static int jj = 0; public sta

python遞練習生成一個n級深度的字典,例如[1,2,3,4,5,6] 可以生成{1: {2: {3: {4: {6: 5}}}}},一個函式定義n

結果#encoding = utf-8#題目:#生成一個n級深度的字典,例如:[1,2,3,4,5,6] 可以生成{1: {2: {3: {4: {6: 5}}}}},寫一個函式定義n級a=[1,2,3,4,5,6] def fun(n,i=0,dict1={}): if i ==n-1: dict1[a[

c++一個函式實現輸入一個字串,將其中的字元按逆序輸出

#include "stdafx.h" #include <iostream> #include <string.h> using namespace std; #define N 20 int _tmain(int argc, _TCHAR* argv[]) {

用java一個函式實現Fibonacci數列演算法(1,1,2,3,5,8,13......)

這個演算法就是第一個數的救國是前兩個數相加, 這個還是結合例子比較好想 public class dd1 { public void getFibonacci(int number){ int nLeft = 0; int nRight = 1; System.out.pr

(用指標方法處理)有n個整數,使前面各數順序向後移m個位置,最後m個數變成最前面m個數。編寫一個函式實現上述功能,在主函式中輸入n個整數,並輸出調整後的n個數

第一種方法:指標法 #include<stdio.h> #include<stdlib.h> int  w(int *d,int e,int g) {      int i,j,t;      int *r;      j=0;    for(i=

編寫一個函式實現數制轉換。在主函式中輸人一個十進位制數,輸出相應的十六進位制數。要求用陣列實現

void decto16 (int a, char c[]) {  // a為要轉換的十進位制數 將結果存放在陣列c中 ,以陣列形式輸出   int y;   int k = 0;   do {     y = a % 16;     a = a / 16;     for (int i = 0

.編寫一個函式實現n^k,使用遞實現

int npower(int n,int k) { if (k == 0) { return 0; } else if (k == 1) { return n; } else { return n*npower(n, k - 1); } } int main