码迷,mamicode.com
首页 > 编程语言 > 详细

C语言小题1

时间:2017-12-04 14:12:30      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:输入数据为一个数组的下标

  • 有一组特殊的数列a1,a2,...,其定义如下:a1=1,a2=2,...,a(n)=2*a(n-1)+a(n-2)。求第k个数项的值。

    要求:第一行是测试数据的组数,后面跟着n行输入,每组测试数据占1行,包括一个正整数k(1<=k<1000000)。

  • #include<stdio.h>
    #include<string.h>
    long func2(int n)
    {
    	float a[1000000]={0};
    	a[1]=1;
    	a[2]=2;
    	int i=0;
    	for(i=3;i<=n;i++)
    		a[i]=a[i-1]*2+a[i-2];
    	return a[n];
    }
    void func1(int a[],int num)
    {
    	int i=0,m=0;
    	for(i=0;i<num;i++)
    	{	m=func2(a[i]);
    		printf("%d.\n",m%32767);
    	}
    
    }
    
    int main()
    {
    
    	int arr[100]={0};
    	int n=0;
    	printf("Please enter a number:");
    	scanf("%d",&n);
    	int i=0;
    	for(i=0;i<n;i++)
    	{
    		scanf("%d",&arr[i]);
    		if(arr[i]<2&&arr[i]==2)
    			return 0;
    	}
    	func1(arr,n);
    	return 0;
    }


    C语言小题1

    标签:输入数据为一个数组的下标

    原文地址:http://blog.51cto.com/13514833/2047130

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    登录后才能评论!
    © 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
    迷上了代码!