C语言常规题型

制作一个简单的打分系统(满分制:100),使用if -elseif-if方法,分数需整数

60分以下:评级为D

60-80分 : 评级为C

80-90分 : 评级为B

90-100分: 评级为A

不在0-100范围内:错误

#include<stdio.h>

int main()
{
    int i;
    printf("请输入分数:");
    scanf("%d\n",&i);
    if (i >= 90 && i<=100)
    {
        printf("评级为A");
    }
    else if ( i >= 80 && i < 90)
    {
        printf("评级为B");
    }
    else if (i >= 60 && i < 80)
    {
        printf("评级为C");
    }
    else if (i>=0 && i < 60)
    {
        printf("评级为D");
    }
    else
    {
        printf("错误");
    }
    
    return 0;
}

 

求1000以内的水仙花数

#include<stdio.h>
int main()
{
    int i, a, b, c;
    for (i = 100; i <= 999; i++) 
    {
        int a = i % 10;
        int b = (i / 10) % 10; 
        int c = i / 100;

        if (i == a * a * a + b * b * b + c * c * c) 
            printf("%d\t", i);
    }
    return 0;
}
  1. 求100以内的质数

#include <stdio.h>

int main()
{
    int i,j;
    for(i=2;i<=100;i++)
    {
        for(j=2;j<i;j++)
        {
            if (i%j==0)
            {
               break;
            }
            
        }
        if(j==i)
        {
            printf("%d ",i);
        }
    }
return 0;

}

  1. 打印五行星堆

#include <stdio.h>

int main()
{
    int i, j;
    for(i=1; i<=5; i++)
    {
        for(j=1; j<=i; j++)
        {
           printf("* ");  
        }
        printf("\n");        
     }
         
    return 0;
}

}

  1. 求n的阶乘

#include<stdio.h>

int main()
{
    int n,i;
    printf("请输入一个数:");
    scanf("%d", &n);
    int j= 1;
    for (i = 1; i <= n; i++)
    {
        j*= i; 
    }
    printf("%d\n", j);
    return 0;
}

  1. 输入一个数,得到第几项的斐波那契数,且判断是否被3整除。

#include <stdio.h>
 
int fib(int n) 
{
    if (n <= 1) 
    {
        return n;
    } 
    else 
    {
        return fib(n - 1) + fib(n - 2);
    }
}
 
int main() 
{
    int n;
    printf("请输入一个整数: ");
    scanf("%d", &n);
    printf("斐波那契数列第%d项为: %d\n", n, fib(n));
    if(fib(n)%3==0)
    {
        printf("yes\n");
    }
    else
    {
        printf("no\n");
    }
    return 0;
}

  1. 输入一个十进制数,将其转换为二进制数

#include<stdio.h>
#define Num 2
int main()
{
    int num;
    int a[16];
    int i=1,j;
    scanf("%d",&num);
    for(j=0;j<16;j++)
    {
        i=num%Num;
        num=num/Num;
        a[j]=i;
    }
    printf("该数二进制为:");
    for(j=15;j>=0;j--)
    {
        printf("%d",a[j]);
        if(j%4==0)
            printf(" ");
    }
    return 0;
}
  1. 打印出一个菱形

#include <stdio.h>

int main()
{
    /*使用循环在终端打印以下图形:
            *
           * *
          * * *
         * * * *
          * * *
           * *
            * 
    */
   int num = 7;
    for(int i = 1; i<=num/2+1; i++)   //上半层
    {
        for(int k = 1; k <= (num/2+1) - i; k++)   //打印 空格
        {
            printf(" ");
        }
        for(int j = 1; j<=i; j++)   //打印 *
        {
            printf("* ");
        }
        printf("\n");
    }
    for(int i = 1; i<=num/2; i++)   //下半层
    {
        for(int k = 1; k <= i; k++)             //打印 空格
        {
            printf(" ");
        }
        for(int j = 1; j<=num/2+1 - i; j++)   //打印 *
        {
            printf("* ");
        }
        printf("\n");
    }
    
    return 0;
}

  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值