用c語言求出三位迴文素數
A. c語言設計:輸出全部的3位迴文數,要求輸出10個結果換行
#include<stdio.h>
intmain(){
intcount=0;
intt=0;
intm;
for(intn=100;n<=1000;n++){
m=n;
t=0;
while(m){
t=t*10+m%10;
m=m/10;
}
if(t==n){
count++;
printf("%d",n);
if(count%10==0){
printf(" ");
}
}
}
printf(" ");
return0;
}
聽說回答的夠長就能夠自動採納
B. 求三位數中的所有迴文數。C語言
3位數的話,就判斷百位和個位是否相等就好:
#include<stdio.h>
intmain()
{
intn,cnt=0;;
for(n=100;n<1000;++n)
{
if(n/100==n%10)//百位==個位?
{
++cnt;
printf("%5d",n);
if(cnt%5==0)
printf(" ");
}
}
printf(" 合計:%d個 ",cnt);
return0;
}
C. C語言迴文素數
1、 用篩選法比較好。效率應該會提高。
但是考慮到n大小問題! 小的就不太適合了!
D. 怎麼用C語言編一個求一個范圍內的迴文素數的程序急
#include<stdio.h>
#include<cmath>
void main()
{
int i,j,k,flag,m,n,count=0;
printf("Input the begin number: ");
scanf("%d",&m);
printf("Input the end number: ");
scanf("%d",&n);
printf("**************PALINDROMIC PRIME(%d~%d)***************\n",m,n);
for(i=m;i<=n;i++)
{
if(!(i%2)) continue;
for(m=3,flag=1;m<=sqrt((float)i)&&flag;m+=2)
if(!(i%m)) flag=0;
if(!flag) continue;
for(k=10,j=0;10*i>=k;k*=10)
j=10*j+(i%k)/(k/10);
if(i==j)
printf(++count%10?"%3d ":"%3d\n",i);
}
printf("\n Total:%d\n",count);
}
E. c語言輸出全部的3位迴文數
程序冗餘,將第二個do 和 花括弧去掉,為什麼不直接用for循環呢,那樣程序簡單易讀
F. C語言編程,輸出三位數中所有的迴文數,並計算出共有多少個
//3位數的迴文數只需判斷第一位(即百位)和第三位(即個位)是否相等,相等則為迴文數
//不定位數的迴文數用數組的方式更加方便,如判斷10---99999999中的迴文數
#include<stdio.h>
#include<stdlib.h>
intmain()
{
intn=100;
intcount=0;//計數
for(n;n<=999;n++)
{
inta,c;//a代表該3位數的第一位,c代表第三位
a=n/100;//求得第一位(百位)
c=n%10;//求得第三位(個位)
if(a==c)
{
printf("%d",n);
count++;
}
}
printf(" 共有%d個",count);
return0;
}
G. c語言程序設計 關於迴文素數
/*
迴文素數——指對一個素數n從左到右和從右到左讀其結果是一樣
的,既稱為該素數為迴文素數。絕對素數——一個素數當它的數字位
置對換後仍為素數,這樣的數稱之為絕對素數。現編程實現:輸入一
個整數,如果為奇數,找出不超過1000的迴文素數和不超過100的絕
對素數。如果為10-20之間的偶數,將其分解為兩個素數之和
*/
#include<stdio.h>
voidmain(void)
{
intprime(int);
intn,i;
printf("輸入一個數n:");
scanf("%d",&n);
if(n%2)
{
for(i=100;i<1000;i++)
if(prime(i)&&prime(i%10*100+((i/10)%10)*10+i/100))
printf("%6d",i);
}
elseif((n>=10)&&(n<=20))
for(i=2;i<=n/2;i++)
if(prime(i)&&prime(n-i))
printf("%8d=%8d+%8d ",n,i,n-i);
return;
}
intprime(intn)
{
inti;
for(i=2;i<n;i++)
if(n%i==0)break;
returni==n;
}
H. C語言:求如何輸出一個整數後面的第一個迴文素數,在線等急!
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
/*******Begin*******/
// 此處應有函數聲明
int IsPrimeNumber(long number);
int hws(long number);
/*******End********/
int main()
{
long n;
scanf("%ld", &n);
/*******Begin*******/
// 此處應能調用所寫的函數獲得第一個大於n的素數與迴文數
int i, k = 0;
for (i = n;; i++)
if (IsPrimeNumber(i) == 1 && (hws(i) == 1))
{
printf("%d ",i);
break;
}
/*******End********/
return 0;
}
/*判斷n是否素數,若是素數,返回1,否則返回0*/
int IsPrimeNumber(long n)
{
/*******Begin*******/
int i;
if (n < 2)
return 0;
for (i = 2; i * i <= n; ++i)
{
if (n % i == 0)
return 0;
}
return 1;
/*******End********/
}
/*判斷n是否迴文數,若是迴文數,返回1,否則返回0*/
int hws(long n)
{
/*******Begin*******/
long t,m;
for(t=n,m=0;t;t/=10)
m=m*10+t%10;
return m==n;
/*******End********/
return 0;
}
I. 編程找出所有三位迴文素數 用c語言
如果是三位的話,比較好辦,就是ABA的形式,首先A不能是偶數,所以可以有循環:for (int a=1;a<10;a=a+2){ for (int b=0;b<10;b++) { int num=a*100+b*10+a; if (num是素數) 列印num;//判斷是素數的代碼你應該知道吧 }}
J. C語言問題(迴文素數)
//#include "stdafx.h"//vc++6.0加上這一行.
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
bool prime(int n){
int i;
if(n<2) return false;
if(n==2 || n==3) return true;
if(!(n%2)) return false;
for(i=3; i*i<=n;i+=2)
if(!(n%i)) return false;
return true;
}
bool palindrome(int n){
char a[5]="",b[5]="";
itoa(n,a,10);
if(!strcmp(a,strrev(strcpy(b,a))))
return true;
return false;
}
void main(void){
int i,ln;
printf("%5d",2);
for(ln=1,i=3;i<10000;i+=2)
if(prime(i) && palindrome(i))
printf(++ln%5 ? "%5d" : "%5d\n",i);
printf("\n");
}