1.求两数的最大公约数
#include<stdio.h>
main()
{
int n1,n2,i,gcd;
printf("输入两个正整数,以空格分割: ");
scanf(\"%d %d\",&n1,&n2);
for(i=1;i<=n1&&i<=n2;++i)
{
if(n1%i==0&&n2%i==0)
gcd=i;
}
printf("%d 和 %d 的最大公约数是%d",n1,n2,gcd);
return 0;
}
2.阶乘
#include<stdio.h>
main(){
int n,i;
long fac=1;
printf("输入一个整数 ");
scanf("%d",&n);
if(n<0)
printf("没有阶乘");
else
{
for(i=1;i<=n;i++)
{
fac=fac*i;
}
printf("%d的阶乘是%lu",n,fac);
}
return 0;
}
3.判断数字为几位数
#include<stdio.h>
main()
{
int n;
int count;
printf("输入一个整数: ");
scanf("%d",&n);
while(n!=0)
{
n/=10;
++count;
}
printf("数字是%d位数",count);
}
4.计算一个数的n次方
#include<stdio.h>
main()
{
int a,b,result;
printf("基数是");
scanf("%d",&a);
printf("指数是");
scanf("%d",&b);
while(b!=0)
{
result*=a;
--b;
}
printf("结果 %d",result);
return 0;
}
5.判断回文数
#include<stdio.h>
int main()
{
int n;
int reverse=0,remainder,origin;
printf("输入一个数");
scanf("%d",&n);
origin=n;
while(n!=0)
{
remainder=n%10;
reverse=reverse*10+remainder;
n/=10;
}
if(origin==reverse)
printf("%d是回文数",origin);
else
printf("%d不是回文数",origin);
return 0;
}