C语言编程 作业求助 求大神来帮忙

1、写一个函数计算1+4+9+16+25+...+10000的值。
2、写一个函数,计算1-2+3-4+5-6+...-10000的值。
3、写一个函数,判断一个四位数是否符合如下条件:这个四位数的逆序排列所得的四位数是它自身的整数倍,如果符合,则返回1,不符合返回0。在主程序中调用这个函数,输出符合这个条件的所有的四位数。
4、写一个函数,输出如下格式的图形,要求输出的行数由参数决定,在主函数中输入行数,调用子函数,输出相应行数的图形:

*






*
5、如果有一个正整数从左、右来读都是一样的,则称为回文式数(简称回数);比如101,32123,999都是回数。数学中有名的“回数猜想”之迷,至今未解决。
回数猜想: 任取一个数,再把它倒过来,并把这两个数相加,然后把这个和数再倒过来,与原和数相加,重复此过程,一定能获得一个回数。
例: 68 倒过来是 86, 68+86= 154,154+541= 605,605+506=1111 (回数)
编程,输入任意整数,按上述方法产生一个回数,为简便起见,最多计算7步,看是否能得到一个回数。
要求:
1)主函数中接收键盘数据,必须用scanf(“%ld”,&变量名)接收整型变量,显示该数与其倒数的和,输出每一步计算步骤。
2)子函数1,计算该数的倒数。
3)子函数2,验证和是否为回数。
4)如果经过7次以内的计算得出的数是回数,则主函数打印“经过n次计算,得到回数”,超过7次未能得到回数,显示,“经过n次计算,未得到回数”。

第四题的图形如下
*






*

要求太多,做不过来。

第一个问题(VC6通过,输入10000即可得到从1到10000所有整数和):
#include
#include

int OnetoANumSum(int n){
int i,sum=0;
for( i=1;i<=n;i++) sum=sum+i;
return (sum);
}
main(){
int zhengshu,S;
printf("Input an integer number to plus: " );
scanf("%d",&zhengshu);
S=OnetoANumSum(zhengshu);
printf("%d\n",S);
return 0;
}
第一个问题(VC6通过,输入10000即可得到-5000):
#include
#include
int OnetoANumJiaotiSum(int n){
int i,sum=0,j=-1,k=0;
for( i=1;i<=n;i++)
{
j=(-1)*j;
k=j*i;
sum=sum+k;
}
return (sum);
}
int main(){
int zhengshu,Sum;
printf("Input an integer number to plus: ");
scanf("%d",&zhengshu);
Sum=OnetoANumJiaotiSum( zhengshu );
printf("%d\n",Sum);
system("pause");
}
余下问题今天没有时间做了。
20151206 23:18