自定义函数处理素数
写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息。
#include<stdio.h>
void ss(int a)
{
int i,n=0;
for(i=1;i<=a;i++)
{
if(a%i==0)//素数只能被1和自身整除
n++;}
if(n>2)
printf("not prime");
else
printf("prime");
}
main()
{
int a;
scanf("%d",&a);
ss(a);
}
自由下落的距离计算
一球从M米高度自由下落,每次落地后返回原高度的一半,再落下。 它在第N次落地时反弹多高?共经过多少米? 保留两位小数
#include<stdio.h>
main()
{
float m,m1,n,i;
scanf("%f%f",&m,&n);
m1=m;
for(i=1;i<=n;i++)
{
m/=2;
m1+=2*m;
}
m1-=2*m;
printf("%.2f %.2f",m,m1);
}
自定义函数处理最大公约数与最小公倍数
写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果两个整数由键盘输入。
#include<stdio.h>
int gy(int a,int b)
{
int t,i;
if(a>b)
t=a,a=b,b=t;
for(i=a;i>=1;i--)
if(a%i==0&&b%i==0)
{
gb(i,a,b);
printf("%d %d",i,gb(i,a,b));
break;
};
}
int gb(int i,int a,int b)
{
return (a*b)/i; //最小公倍数为两数之和除于最大公约数
}
main()
{
int m,n;
scanf("%d%d",&m,&n);
gy(m,n);
}
数字的判断与处理
给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
#include<stdio.h>
int main()
{
int a,i,n=0,n1,s[5],k=0;
scanf("%d",&a);
while(a!=0)
{
s[k]=a%10;
k++;
a=a/10;
n++;
}
n1=n;
printf("%d\n",n);
for(n1=n1-1;n1>-1;n1--)
{
printf("%d",s[n1]);
printf(" ");
}
printf("\n");
for(k=0;k<n;k++)
printf("%d",s[k]);
}