C语言两个程序,高手大哥帮忙作下,急~!

来源:百度知道 编辑:UC知道 时间:2024/05/30 19:30:39
1,键盘输入十个数,输出所有负数,和负数的和
2,利用公式求E
E=1+1/1!+1/2!+1/3!+.....+1/N!+...
要求在通项T<1e-7时,停止
..那就换一个题吧..
输出2~1000之间的所有完数,完数是指一个数的所有因子之和与该数本身相等的数.
例如
28的因子是:1,2,4,7,14,且28=1+2+4+7+14
则28是完数

第一个:
#include<stdio.h>
void main()
{
int a[10],i,sum=0;
printf("请输入10个数:\n");
for(i=0;i<10;i++)
{scanf("%d",&a[i]);}
printf("所有负数为:\n");
for(i=0;i<10;i++)
{if(a[i]<0)
{printf("%4d",a[i]);
sum+=a[i];}
}
printf("\n");
printf("所有负数之和为:%d\n",sum);
}

好的,下面的就是
#include<stdio.h>
void main()
{
int i,j,sum=0;
printf("完全数为:\n");
for(i=2;i<=1000;i++)
{
sum=0;
for(j=1;j<i;j++) {if(i%j==0) sum+=j;}
{ if(i==sum)
printf("%4d",sum); }
}
printf("\n");
}

T是什么? 第一个用数组,跟一个和 很好算,比如先输入S[1],然后S[1]=0-S[1],然后结果相加,再输出就可以了,定义数据时最好用实型的,第二个 用一个IF循环一个整形变量,一个和就行了,先用IF判断T是否小于0.0000007,是就加,不是就终止,然后输出就好了!学这东西不要急,要慢慢来,先照书敲,慢慢就会了