C语言两题小小编写题紧急求解!高分即刻送高手

来源:百度知道 编辑:UC知道 时间:2024/07/16 08:39:01
1.从键盘上输入一个不多于5位的正整数,要求输出这个正整数的各位数字的和。例如输入1990,输出为19(1+9+9+0=19)。

2.利用数组求Fibonaacci数列的前10项,分二行输出。这个数列有如下特点:第1、2两个数为1、1;从第3个数开始,该数是其前面两个数之和。

第一个
long n;
int gewei,shiwei,baiwei,qianwei,wanwei;
scanf("%ld",&n);
gewei = n%10;
shiwei = n/10%10;
baiwei = n/100%10;
qianwei = n/1000%10;
wanwei = n/10000;

这样就OK了

第二个我写地归 ,当然也可以用for

long f(int i){
int n;
if (i==1||i==2){
return 1;
}

long f1 = 1L ;
long f2 = 1L ;
long f =0;
for( n=0;n<i-2;n++){
f = f1 + f2;
f1 = f2;
f2 = f;
}

return f;
}

第一个:
#include"stdio.h"
void main()
{
int i1;
scanf("%d",&i1); //输入
int i2;
i2=i1; //拷贝一份
int j[5];
int k,m,sum;
sum=0;
for (k=0;k<5;k++)
{
j[k]=i2%10; //分离各位数
sum += j[k]; //加和
i2&=10;
}
for (k=4;k>=0;k--)
if (j[k] != 0) //计算共有几位
break;
m=k;
printf("