c语言14

22 阅读1分钟

素数

#include <stdio.h>
int f2(int n)
{
    for (int i = 2; i < n; i++)
        if (n % i == 0)
        {
            return 0;
        }
    return 1;
}
void f1(int n, int m)
{
    for (int i = n; i <= m; i++)
    {
        if (f2(i))
        {
            printf("%d ", i);
        }
    }
}
int main()
{
    int x, y;
    printf("输入2个数字: ");
    scanf("%d %d", &x, &y);
    f1(x, y);
    return 0;
}

获取double值时必须使用%lf,不然会出问题,float则可以用%f

#include <stdio.h>
void f1(double n, double m)
{
    int BMI = n / (m * m);
    printf("BMI指数为:%d\n", BMI);
    if(BMI < 18.5){
        printf("过轻\n");
    }
    else if(BMI >= 18.5 && BMI < 24.9){
        printf("正常\n");
    }
    else if(BMI >= 24.9 && BMI < 29.9){
        printf("超重\n");
    }
    else{
        printf("肥胖\n");
    }
}
int main()
{
    double x, y;
    printf("输入体重,身高: ");
    scanf("%lf %lf", &x, &y);
    f1(x, y);
    return 0;
}

求和

#include <stdio.h>
void f1(int n, int m)
{
    int sum = 0;
    for (int i = n; i <= m; i++){
        sum += i;
    }
    printf("sum=%d\n", sum);
}
int main()
{
    int x, y;
    printf("输入2个数字: ");
    scanf("%d %d", &x, &y);
    f1(x, y);
    return 0;
}

斐波拉切数列

#include <stdio.h>
int f1(int n)
{
    if (n == 1 || n == 2)
    {
        return 1;
    }
    int a = 1, b = 1, c=0;
    for (int i = 3; i <= n; i++){
        c = a + b;
        a = b;
        b = c;
    }
    return c;
}
int main()
{
    int n;
    printf("请输入项数:");
    scanf("%d", &n);
    printf("%d\n", f1(n));
    return 0;
}

其他函数

字典网站:zh.cppreference.com/ 要注意include后的头函数 例如math.h:

  1. sqrt()开方
  2. pow()求几次方
  3. ceil()向上取整
  4. floor()向下取整
  5. abs()绝对值