c语言编程问题,素数加减

请问这个该怎么写,按所求素数的值从大到小的顺序,计算其间隔减,加之和

基于Monster 组和GPT的调写:

#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>

bool is_prime(int n) {
    if (n < 2) {
        return false;
    }
    for (int i = 2; i * i <= n; i++) {
        if (n % i == 0) {
            return false;
        }
    }
    return true;
}

int main() {
    int n;
    printf("请输入要查找的素数数量: ");
    scanf("%d", &n);
    
    int primes[n];
    int num = 2;
    int count = 0;
    while (count < n) {
        if (is_prime(num)) {
            primes[count] = num;
            count++;
        }
        num++;
    }
    
    long long sum = 0;
    for (int i = n-1; i > 0; i--) {
        sum += primes[i] - primes[i-1];
    }
    sum += primes[0] - 1;
    
    printf("间隔减,加之和为:%lld", sum);
    
    return 0;
}