判断素数(prime):
#include <stdio.h>
#include <math.h>
int main()
{
int i=0;
int num=0;
printf("方法一,直接循环判断\n");
printf("请输入一个整数:\n");
scanf("%d",&num);
for(i=2;i<=num-1;i++)
{
if(num%i==0)
{
break;
}
}
if(i<num)
{
printf("num isn't a prime\n");
}
else
{
printf("num is a prime\n");
}
printf("方法二,循环到平方根判断\n");
int n=0;
n=sqrt(num);
for(i=2;i<=n;i++)
{
if(num%i==0)
{
break;
}
}
if(i<=n)
{
printf("num isn't a prime\n");
}
else
{
printf("num is a prime\n");
}
return 0;
}
编译方法:gcc prime.c -o prime -Wall -lm
判断水仙花数(narcissistic number):
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,j,k,n;
printf("'water flower'number is:");
for(n=100;n<1000;n++)
{
i=n/100;/*分解出百位*/
j=n/10%10;/*分解出十位*/
k=n%10;/*分解出个位*/
if(n==i*i*i+j*j*j+k*k*k)
{
printf("%-5d",n);
}
}
printf("\n");
return 0;
}
判断回文数(palindrome number):
#include<stdio.h>
int x,y;
void separate(int *data,int n)
{
int i,j;
y=0;
while(n!=0)
{
*(data+y)=n%10;n=n/10;y++;
}
*(data+y)='\0';
for(i=0,j=y-1;i<=j;i++,j--)
{
if(*(data+i)!=*(data+j)){
printf("%d不是回文!!!\n",x);break;
}
}
//if(i ==y-1) printf("是回文数");
printf("是回文数\n");
}
int main()
{
int a[99];
printf("请输入一个正整数:");
scanf("%d",&x);
separate(a,x);
return 0;
}
判断闰年
/*
判断是否闰年
*/
#include <stdio.h>
int main()
{
printf("请输入年份:\n");
int year=0;
scanf("%d",&year);
//判断闰年的条件
if(((year%4==0) && (year%100!=0))||(year%400==0))
{
printf("%d is leap\n",year);
}
else
{
printf("%d isn't leap\n",year);
}
return 0;
}