1. 斐波那契分数数列的前n项之和
斐波那契分数数列为2+3/2+5/3+8/5+13/8+…
#include"stdio.h" //斐波那契分数:下一个分数的分母是前一个分数的分子,分子是前一个分数的分子和分母的和。
void main()
{
int n,a=2,b=1,i,c;
float s=0;
scanf("%d",&n); //计算n个斐波那契分数
for (i=1;i<=n;i++)
{
s=s+(float)a/b; //a是分子,b是分母。
c=b; //分母的值赋值给c。
b=a; //将分子的值赋值给b(下一个分数的分母)。
a=a+c; //将分子和分母的值赋值给a(下一个分数的分子)。
}
printf("%.2f\n",s);
}
2.水仙花数
水仙花数是指一个 n 位数(n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)
#include //3^3 = 153)
void main()
{
int x,m,n,k;
for(x=100;x<1000;x++)
{
m=x/100; //m代表该数的百位数字
n=x/10%10; //n代表该数的百位的数字
k=x%10; //k代表该数的个位数字
if(x==m*m*m+n*n*n+k*k*k) //判断如果是水仙花数
printf("%d\n",x); //输出函数的值
}
}
3. 素数
#include
void main()
{
int m;
scanf("%d",&m);
prime(m);
}
prime(int n)
{
int i,k;
k=n/2; //执行循环k次
for(i=2;i<=k;i++) //依次判断是否i被整除
if(n%i==0) break; //若整除,则退出
if(i>=k+1)
printf("This is a prime number");
else
printf("This isn't a prime number");
}
4. 二维数组行列互换
#include
void main()
{
int i,j,a[2][3],b[3][2]; //定义一个两行三列和一个三行两列的数字
for(i=0;i<=1;i++)
{
for(j=0;j<=2;j++)
scanf("%d",&a[i][j]);
printf("\n");
} //输入数列
for(i=0;i<=1;i++)
{
for(j=0;j<=2;j++)
b[j][i]=a[i][j]; //交换行与列
}
for(i=0;i<=1;i++)
{
for(j=0;j<=2;j++)
printf("%4d",a[i][j]);
printf("\n");
} //输出原来的数列
for(j=0;j<=2;j++)
{
for(i=0;i<=1;i++)
printf("%4d",b[j][i]); //输出交换后的数列
printf("\n");
}
}