2401_83754279 2024-05-14 09:47 采纳率: 89.7%
浏览 4
已结题

C语言将一个程序写进另一个程序中


#include <stdio.h>
void removeElement(int *arr, int n, int num) {
    for (int i = num; i < n - 1; i++) {
        arr[i] = arr[i + 1];
    }
}
void printArray(int *arr, int n) {
    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
}
int main() {
    int m, n;
    printf("Enter the number of tourists (m) and the counting number (n): ");
    scanf("%d %d", &m, &n);
    int *tourists = (int *)malloc(m * sizeof(int));
    for (int i = 0; i < m; i++) {
        tourists[i] = i + 1;
    }
    printf("The remaining tourists are: ");
    printArray(tourists, m);
    int count = 1;
    while (m > 1) {
        if (count % n == 0) {
            removeElement(tourists, m, tourists[count - 1] - 1);
            m--;
        }
        count++;
    }
    printf("The winner is: %d\n", tourists[0]);
    free(tourists);
    return 0;
}

#include <stdio.h>
#include <stdbool.h>
#include <string.h>
void freeTravel(int m, int n);
void palindromeFormation(int num);
void findOddNumber();
bool isPalindrome(int num) {
    int reversed = 0, original = num, remainder;
    while (original != 0) {
        remainder = original % 10;
        reversed = reversed * 10 + remainder;
        original /= 10;
    }
    return num == reversed;
}
int main() {
    int choice;
    do {
        printf("\n请选择功能:\n");
        printf("1. 免费旅行\n");
        printf("2. 回文数的形成\n");
        printf("3. 奇异的三位数\n");
        printf("4. 退出程序\n");
        scanf("%d", &choice);
        int m, n;
        int input;
        switch (choice) {
            case 1:
                printf("请输入游客数量m和报数值n:");
                scanf("%d %d", &m, &n);
                freeTravel(m, n);
                break;
            case 2:
                printf("请输入一个十进制整数:");
                scanf("%d", &input);
                palindromeFormation(input);
                break;
            case 3:
                findOddNumber();
                break;
            case 4:
                printf("感谢使用程序,再见!\n");
                break;
            default:
                printf("无效的输入,请重新选择。\n");
                break;
        }
    } while (choice != 4);
    return 0;
}
void freeTravel(int m, int n) 
{
    
    }
    int index = 0, count = 0;
    while (count < m - 1) {
        for (i = 1; i < n; i++) { 
            index = (index + 1) % m; 
            if (circle[index] == 
}

 void palindromeFormation(int num) 
 {
    int reverseNum, addNum;
    char strNum[11], strReverseNum[11], strAddNum[11];
    int isPalindromic = 0;
    while (!isPalindromic) {
        sprintf(strNum, "%d", num);
        strcpy(strReverseNum, strNum);
        int len = strlen(strNum);
        for (int i = 0; i < len/2; i++) {
            char c = strReverseNum[i];
            strReverseNum[i] = strReverseNum[len-i-1]; 
            strReverseNum[len-i-1] = c;
        }
        sscanf(strReverseNum, "%d", &reverseNum);
        addNum = num + reverseNum;
        printf("%d + %d = %d\n", num, reverseNum, addNum); 
        sprintf(strAddNum, "%d", addNum);
        isPalindromic = 1;
        len = strlen(strAddNum);
        for (int i = 0; i < len/2; i++) {
            if (strAddNum[i] != strAddNum[len-i-1]) {
                isPalindromic = 0;
                break;
            }
        }
        num = addNum;
    } 
    printf("回文数为:%d\n", addNum);
}
void findOddNumber() {
    int n, s, t;
    int i;
    for (i = 100; i < 999; i++) {
        n = x2t(i, 7);
        t = re(i);
        s = x2t(t, 9);
        if (n != 0 && s != 0 && n == s) {
            printf("这个奇异的三位数为:七进制:%d,九进制:%d,十进制:%d\n", i, t, n);
            break;
        }
    }
}
int x2t(int n, int x) {
    int t = 0, d = 1, a;
    while (n) {
        a = n % 10;
        if (a >= x)
            return 0;
        t += a * d;
        d *= x;
        n /= 10;
    }
    return t;
}
int re(int n) {
    int s = 0, t;
    while (n) {
        t = n % 10;
        s = t + s * 10;
        n /= 10;
    }
    return s;
}

C语言将第一个程序写进第二个程序中使其成为第二个的一个运算功能

  • 写回答

2条回答 默认 最新

  • 专家-皆知 2024-05-14 09:47
    关注

    在C语言中,无法直接将一个程序嵌入到另一个程序中。但可以通过函数调用来复用代码。

    以上回复有部分引自免费微信小程序:皆我百晓生。 如问题尚未解决,还请稍待,如有疑问请回复进一步沟通。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月27日
  • 已采纳回答 5月19日
  • 创建了问题 5月14日