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

// 函数声明
int add(int a, int b);
int is_prime(int num);
void reverse_string(char *str);

int main() {
    // 测试整数加法
    int sum = add(5, 7);
    printf("5 + 7 = %d\n", sum);

    // 测试素数判断
    int num = 17;
    if (is_prime(num)) {
        printf("%d 是素数\n", num);
    } else {
        printf("%d 不是素数\n", num);
    }

    // 测试字符串反转
    char str[] = "Hello, World!";
    printf("原始字符串: %s\n", str);
    reverse_string(str);
    printf("反转后字符串: %s\n", str);

    return 0;
}

// 实现整数加法
int add(int a, int b) {
    return a + b;
}

// 判断一个数是否为素数
int is_prime(int num) {
    if (num <= 1) return 0;
    for (int i = 2; i * i <= num; i++) {
        if (num % i == 0) return 0;
    }
    return 1;
}

// 反转字符串
void reverse_string(char *str) {
    int len = strlen(str);
    for (int i = 0; i < len / 2; i++) {
        char temp = str[i];
        str[i] = str[len - i - 1];
        str[len - i - 1] = temp;
    }
}