若一个三位数等于其各位上数字的立方和,则称这个三位数为水仙花数。编写一个程序,输出所有的水仙花数。
输入格式:
无输入
输出格式:
按照从小到大的顺序输出所有水仙花数,一行输出一个数。
输入样例:
在这里给出一组输入。例如:
输出样例:
在这里给出相应的输出。例如:
153
370
371
407
#include
#include
int main ()
{
int i,g,s,b,sum;
for(i=100;i<=999;i++)//遍历所有三位数
{
g=i%10;//取个位数
s=(i/10)%10;//取十位数
b=i/100;//取百位数
sum=pow(g,3)+pow(s,3)+pow(b,3);//求和
if(i==sum)/*判断是否相等,是则输出此百位数*/
{
printf("%d\n",i);
}
}
return 0;
}
编写一个程序,输入两个整数,用辗转相除法计算其最大公约数和最小公倍数。。
输入格式:
在一行中输入两个以逗号为间隔的整数。
输出格式:
以逗号为间隔输出这两个整数的最大公约数和最小公倍数。
输入样例:
在这里给出一组输入。例如:
24,36
输出样例:
在这里给出相应的输出。例如:
12,72
#include
int main ()
{
int a,b,max,min,mcm,t=1;
scanf("%d,%d",&a,&b);
if(a>b)//比较两个数
{
max=a;
min=b;
}else{
max=b;
min=a;
}
while(min>0)//辗转相除法求最大公约数,t=0时结束
{
t=max%min;
max=min;
min=t;
}
mcm=(a*b)/max;//最小公倍数
printf("%d,%d",max,mcm);
return 0;
}
编写一个程序,计算s=1!+2!+3!+…+n!。其中!为阶乘运算,n由输入决定。
输入格式:
输入正整数n。
输出格式:
输出1!+2!+3!+…+n!的值。
输入样例:
在这里给出一组输入。例如:
3
输出样例:
在这里给出相应的输出。例如:
9
#include
int main ()
{
int a,b,s,sum,i;
scanf("%d",&a);
for(i=1;i<=a;i++)//求前n项的和
{
for(b=i;b>0;b--)//求第n项的阶乘
{
s*=b;//printf("b=%d,s=%d",b,s);这个是调试用的
}
sum+=s;
//printf("\ti=%d,sum=%d\n\n",i,sum);这个也是调试用的
s=1;
}
printf("%d",sum);
return 0;
}
编写一个程序,计算
输入格式:
输入正整数m。
输入样例:
在这里给出一组输入。例如:
3
输出样例:
在这里给出相应的输出。例如:
0.833333
#include
#include
double total(int n)//编这个求和函数命名为total
{ int b=1;
double sum = 0;
for(float i = 1; i <= n; i++)
{ b++;
sum += pow(-1,b)*(1/i);
}
return sum;
}
int main(){
int n;
scanf("%d",&n);
printf("%7.6lf\n",total(n));//调用求和函数并输出值
return 0;
}