1. c语言求输出一个数列:输出1,1,2,3,5...的前20项,并以每行5个数字输出
/* 已编辑调试通过,请验证;如果还有问题,请追问;希望能够帮助到你 */#include <stdio.h>
#define max 100
int main(int argc, char *argv[])
{
int i = 0, n;
int arr[max];
arr[0] = 0;
arr[1] = 0;
arr[2] = 1;
printf("请输入要输出的数列项数:");
scanf("%d", &n);
for(i=3; i<n; i++)
{
arr[i] = arr[i-1] + arr[i-2] + arr[i-3];
}
for(i=0; i<n; i++)
{
printf("%d", arr[i]);
if(0==(i+1)%5)
{
printf("\n");
}
else
{
printf("\t");
}
}
return 0;
}
2. 求用C语言表达斐波那契数列
#include <stdio.h>
main( ){
long f1,f2,f;
int i,n;
scanf("%d",&n);
f1=f2=1;
if(n<=2)
f=1;
else
for(i=3;i<=n;i++){
f=f1+f2;
f1=f2;
f2=f;
}
printf("%ld
",f);
}
3. C语言问题:运用数组与递归函数的知识求解输入一个整数,输出对应的斐波那契数列
这个不难,我写给你,你自己看一下。
代码:
#include <stdio.h> //调用头文件
int fib(int num);//函数声明
int main()//主函数
{
int num;
printf(”输入数值:”);
scanf(”%d”,&num);
printf(”%d\n”,fib(num));
}
int fib(int num)
{
int result;
if(n==0 || n==1)
result=1
else
result=fib(num-1)+fib(num-2);//递归调用函数
return result;
}
4. C语言编程:一个数列,它的头两个数是0、1,第三个数为前两个数之和,以后每个数分别等于其前两个数之和,
#include<stdio.h>
int main(void)
{
int x = 0, y = 1, z = 0, i = 0;
printf("%d\t%d\t", x, y);
for (i = 0; i < 18; i++) {
z = x + y;
printf("%d\t", z);
x = y;
y = z;
}
return 0;
}
以上程序结果如下:
0 1 1 2 3 5 8 13 21 34
55 89 144 233 377 610 987 1597 2584 4181
5. ,c语言:利用数组求斐波那契数列的前20项
代码如下:
int a[20]={1,1};
printf(“%d %d ”,a[0],a[1]);
for(int i=0;i<20;i++)
{
printf(“%d ”,a[i]=a[i-1]+a[i-2]);
}
(5)c语言数列映射扩展阅读:
如何掌握C语言基础知识及技巧:
首先准备一台PC,学编程一般对PC没有太大的要求,一般主流的配置就好。
有了电脑之后,就得考虑安装什么操作系统了,主流使用的操作系统是windows,不过在这里不建议学习C编程使用windows,建议使用Linux。所以学习者最好安装双系统,或者彻底习惯Linux系统。
不管学习哪门编程语言,都建议学习者必须有一本关于此语言的全面知识的书籍,大一般采用的是谭浩强老师的《C语言程序设计》,还有 《C语言C++学习指南》从入门到精通(语法篇)视频课程在线学习等,建议学习者可以去仔细研读
6. C语言的映射是什么
书的后面不是有讲,散列表就是一种映射。
数据的存储方式是按照key<->value。
key和value有种映射关系。
在散列表中key则是通过散列函数计算出来的。
7. 用c语言给数列:1,1,2,3,5,8…求和
#include <stdio.h>
#include <math.h>
int main() {
int array[41];
int i;
array[1] = 1;
array[2] = 1;
for(i=3;i<=40;i++) {
array[i] = array[i-1] + array[i-2];
}
printf("%d ", array[40]);
return 0;
}
8. C语言中如何将读取的数值存到一个数列中,再将这些数列显示出来指针和数列
/*
13579
49 51 53 55 57 5
49 51 53 55 57 5
Press any key to continue
*/
#include<stdio.h>
#define N 6
main(int argc,char **argv){
int A[N];
int m = 0;
while((A[m] = getchar()) != '\n') m++;
printf("%d %d %d %d %d %d\n",A[0],A[1],A[2],A[3],A[4],m);
printf("%d %d %d %d %d %d\n",*(A + 0),*(A + 1),*(A + 2),*(A + 3),*(A + 4),m);
return 0;
}
9. 用C语言编程 斐波那契数列:1,1,2,3,5,8,13…,输出前13项,每行输出5个数。
public class FeiBoMethod {
// 使用递归方法
private static int getSum(int num) {
if (num== 1 || num== 2)
return 1;
else
return getSum(num- 1) + getFibo(num- 2);
}
public static void main(String[] args) {
System.out.println("斐波那契数列的前13项为:");
for (int i = 1; i <= 13; i++) {
System.out.print(getSum(i) + " ");
if (i % 5 == 0)
System.out.println();
}
}
}
(9)c语言数列映射扩展阅读:
使用数组的方式实现
publicclassFeiBoMethod{
//定义数组方法
publicstaticvoidmain(String[]args){
intarr[]=newint[13];
arr[0]=arr[1]=1;
for(inti=2;i<arr.length;i++){
arr[i]=arr[i-1]+arr[i-2];
}
System.out.println("斐波那契数列的前13项如下所示:");
for(inti=0;i<arr.length;i++){
if(i%5==0)
System.out.println();
System.out.print(arr[i]+"\t");
}
}
}
10. C语言菲波那契数列
你的程序有几处问题,一、题目要求是前n行为输入部分,后n行为输出部分,而你的程序是输入一个紧跟着输出一个。二、你的程序存在很大的性能上的缺陷,那就是每次求斐波拉奇数列的时候,你的程序做了许多的重复劳动,其实你求斐波拉契的代码思路是正确的,但fei函数最好是传入一个数组,求出该数组后再传出该数组比较合适,这样斐波拉契数列只求一次,以后重复使用,可大大提高性能。因此可作如下修改:
#include <stdio.h>
void fei(int x[ ], int n);
int main( )
{
int n,a[50],i;
int Fibonacci[21];
scanf("%d",&n); /*输入测试数据*/
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
fei(Fibonacci, 21); /*求斐波拉契数列*/
for(i = 1; i <= n; i++) /*输出结果*/
printf("%u\n", Fibonacci[a[i]]);
return 0;
}
void fei(unsigned int x[ ], int n)
{
int j;
x[0] = 0;
x[1] = 1;
for(j = 2; j < n; j++)
{
x[j] = x[j - 2] + x[j - 1];
}
}