c语言小题目练习
2017-11-21 20:05
232 查看
题目1:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。
#include <stdio.h>
int main()
{
int i,j;
for(i=1;i<=1000;i++)
{
int sum=0;
for(j=1;j<i;j++)
{
if(i%j==0)
{
sum=sum+j;
}
}
if(sum==i)
{
printf("%d\n",i);
}
}
return 0;
}
题目2:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
#include <stdio.h>
int main()
{
int i;
double x=1.0,y=2.0,sum=0,tmp;
for(i=0;i<20;i++)
{
sum=sum+y/x;
tmp=x;
x=y;
y=tmp+y;
}
printf("the sum is:%lf\n",sum);
return 0;
}
题目3:求1+2!+3!+...+10!的和
#include <stdio.h>
int main()
{
int i,j=1,sum=0;
for(i=1;i<=10;i++)
{
j=j*i;
sum=sum+j;
}
printf("%d\n",sum);
return 0;
}
题目4:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
#include <stdio.h>
int main()
{
int i,a,b,c;
for(i=100;i<=999;i++)
{
a=i%10;
b=i/10%10;
c=i/100;
if(i==a*a*a+b*b*b+c*c*c)
{
printf("%d\n",i);
}
}
return 0;
}
题目5:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制
#include <stdio.h>
int main()
{
int i,a,n,x=0,sum=0;
printf("please input the number and geshu:\n");
scanf("%d%d",&a,&n);
for(i=0;i<n;i++)
{
x=x*10;
x=x+a;
sum=sum+x;
}
printf("%d\n",sum);
return 0;
}
#include <stdio.h>
int main()
{
int i,j;
for(i=1;i<=1000;i++)
{
int sum=0;
for(j=1;j<i;j++)
{
if(i%j==0)
{
sum=sum+j;
}
}
if(sum==i)
{
printf("%d\n",i);
}
}
return 0;
}
题目2:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
#include <stdio.h>
int main()
{
int i;
double x=1.0,y=2.0,sum=0,tmp;
for(i=0;i<20;i++)
{
sum=sum+y/x;
tmp=x;
x=y;
y=tmp+y;
}
printf("the sum is:%lf\n",sum);
return 0;
}
题目3:求1+2!+3!+...+10!的和
#include <stdio.h>
int main()
{
int i,j=1,sum=0;
for(i=1;i<=10;i++)
{
j=j*i;
sum=sum+j;
}
printf("%d\n",sum);
return 0;
}
题目4:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
#include <stdio.h>
int main()
{
int i,a,b,c;
for(i=100;i<=999;i++)
{
a=i%10;
b=i/10%10;
c=i/100;
if(i==a*a*a+b*b*b+c*c*c)
{
printf("%d\n",i);
}
}
return 0;
}
题目5:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制
#include <stdio.h>
int main()
{
int i,a,n,x=0,sum=0;
printf("please input the number and geshu:\n");
scanf("%d%d",&a,&n);
for(i=0;i<n;i++)
{
x=x*10;
x=x+a;
sum=sum+x;
}
printf("%d\n",sum);
return 0;
}
相关文章推荐
- c语言竞赛小题目练习
- C语言练习题目
- 练习c语言题目
- C语言复习day3(题目练习)
- C语言之多维数组简单题目练习
- C语言练习题目
- c语言题目练习(2)
- 初等算术 C语言练习
- LeetCode Online Judge 题目C# 练习 - Search in Rotated Sorted Array II
- LeetCode Online Judge 题目C# 练习 - Sort Color
- 几道C语言题目,有兴趣的可以自己动手试试
- C语言 - ACM题目:软件版本问题
- LeetCode Online Judge 题目C# 练习 - Valid Parentheses
- [算法练习]快速排序的C语言实现
- C语言练习(1)
- c语言练习 5-0. 求序列前N项和
- C语言练习(2)
- SAT数学:练习题目两道
- C语言练习02:搜索质数之一
- C语言练习03:操作SQLite数据库