第七次作业

斐波那契数列:
#include<stdio.h> int main(void) { int i; long int f[40]={1,1}; for(i=2;i<40;i++) f[i]=f[i-2]+f[i-1]; for(i=0;i<40;i++) { if(i%5==0)printf("\n"); printf("%12ld",f[i]); } }
作业系统:

#include<stdio.h>
#include<math.h>
int main()
{
    int sign(int x);
    int n,sum;
    int even(int n);
    int j,i;
    int prime(int m);
    int c,digit,in;
    int countdigit(int number,int digit);
    int choice=0,num,x;
    int is(int number);


    do{
        printf("*****实验6:*****\n");
        printf("*****计算分段函数的值:*****\n");
        printf("*****使用函数计算奇数和:*****\n");    
        printf("*****利用函数计算素数个数并求和:*****\n");
        printf("*****利用函数统计指定数字的个数:*****\n");
        printf("*****使用函数输出水仙花数:*****\n");
        printf("*****请选择题号:*****\n");
        scanf("%d",&choice);
        switch(choice) 
        {
            case 1:    
            printf("清输入x:\n");
            scanf("%d",&x);
            printf("f(%d)=%d\n",x,sign(x)); 
            break;
            case 2:    
            scanf("%d",&n);
            sum=0;
            while(n>0){
            if(even(n)==0)
             sum=sum+n;
             scanf("%d",&n);
            }
            printf("The sum of the odd numbers is %d.\n",sum);
            break;
            case 3:    
            int c,i,m,n,sum;
            scanf("%d%d",&m,&n);
            c=sum=0;
            for(i=m;i<=n;i++)
            if(prime(i)!=0)
             {
                c++;
                sum=sum+i;
             }
            printf("c=%d,sum=%d\n",c,sum);break;
            case 4:
            scanf("%d%d",&in,&digit);
            c=countdigit(in,digit);
            printf("number %d of digit %d:%d\n",in,digit,c);
            break;
            case 5:
            int a;
            scanf("%d%d",&m,&c);
            printf("result:\n");
            for(a=m;a<=c;a++)
            if(is(a)!=0)
            printf("%d\n",a);
            break;
            case 0:break;
        }
       }while(choice!=0);
    return 0;
} 
int sign(int x)
{
    if(x>0) return 1;
     else if(x==0) return 0;
     else return -1;
}
int even(int n)
{
    int y;
    if(n%2==0)
     y=1;
    else 
     y=0;
    return y;
}
int prime(int m)
{
    int j,i;
    if(m==1)
     return 0;
    j=sqrt(m);
    for(i=2;i<=j;i++)
    if(m%i==0)
     return 0;
    return 1;
}
int countdigit(int number,int digit)
{
    int c;
    if(number<0)
    number=-number;
    c=0;
    do{
        if(number%10==digit)
         c++;
           number=number/10;
      }while(number!=0);
    return c;
}    
int is(int number) 
{
    int digit,sum,temp;
    temp=number;
    sum=0;
    while(temp!=0){
        digit=temp%10;
        temp=temp/10;
        sum=sum+digit*digit*digit;
    }
return sum==number;
} 
    

 

原文地址:https://www.cnblogs.com/moyansameal/p/6033194.html