From 07a011f006f67168ce85adee507e5a8b739f6d3b Mon Sep 17 00:00:00 2001 From: 2209040022 <13564323+a2209040022@user.noreply.gitee.com> Date: Fri, 22 Dec 2023 08:04:29 +0000 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 2209040022 <13564323+a2209040022@user.noreply.gitee.com> --- ...7\273\255\346\225\264\346\225\260\345\222\214" | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 "2209040022/chapter1/\346\261\2021~n\347\232\204\350\277\236\347\273\255\346\225\264\346\225\260\345\222\214" diff --git "a/2209040022/chapter1/\346\261\2021~n\347\232\204\350\277\236\347\273\255\346\225\264\346\225\260\345\222\214" "b/2209040022/chapter1/\346\261\2021~n\347\232\204\350\277\236\347\273\255\346\225\264\346\225\260\345\222\214" new file mode 100644 index 00000000..3a10cf89 --- /dev/null +++ "b/2209040022/chapter1/\346\261\2021~n\347\232\204\350\277\236\347\273\255\346\225\264\346\225\260\345\222\214" @@ -0,0 +1,15 @@ +#include +int main(void) +{ +    int i=0; +    int a=0; +    int sum=0; +    printf("输入一个n的值: "); +    scanf("%d",&a); +    for(i=1;i<=a;i++) +    { +        sum+=i; +    } +    printf("和为%d\n",sum); +    return 0; +} \ No newline at end of file -- Gitee From 45bac5e898ca422e6b9f4a32ce50590541f69190 Mon Sep 17 00:00:00 2001 From: 2209040022 <13564323+a2209040022@user.noreply.gitee.com> Date: Fri, 22 Dec 2023 08:11:43 +0000 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 2209040022 <13564323+a2209040022@user.noreply.gitee.com> --- ...5\260\347\232\204\344\270\252\346\225\260" | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 "2209040022/chapter1/\346\261\202\347\264\240\346\225\260\347\232\204\344\270\252\346\225\260" diff --git "a/2209040022/chapter1/\346\261\202\347\264\240\346\225\260\347\232\204\344\270\252\346\225\260" "b/2209040022/chapter1/\346\261\202\347\264\240\346\225\260\347\232\204\344\270\252\346\225\260" new file mode 100644 index 00000000..f47efbef --- /dev/null +++ "b/2209040022/chapter1/\346\261\202\347\264\240\346\225\260\347\232\204\344\270\252\346\225\260" @@ -0,0 +1,22 @@ +#include +#include + int main() +{ + int a, b, c, i, k = 0, d; + scanf("%d %d", &a, &b); + for (c = a; c <= b; c++) +{ + d = 1; + for (i = 2; i <= sqrt(c); i++) + if (c % i == 0) { + d = 0; + break; + } + if (d == 1) + k++; + if (c == b) + printf("%d", k); + +} + +} \ No newline at end of file -- Gitee From 258d19210fb56f0a550caba77d5cd69e2bbd0fad Mon Sep 17 00:00:00 2001 From: 2209040022 <13564323+a2209040022@user.noreply.gitee.com> Date: Fri, 22 Dec 2023 08:29:54 +0000 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 2209040022 <13564323+a2209040022@user.noreply.gitee.com> --- ...1\230\347\232\204\350\277\220\347\256\227" | 114 ++++++++++++++++++ 1 file changed, 114 insertions(+) create mode 100644 "2209040022/chapter 2/\345\256\236\347\216\260\344\270\244\344\270\252\345\244\232\351\241\271\345\274\217\347\233\270\344\271\230\347\232\204\350\277\220\347\256\227" diff --git "a/2209040022/chapter 2/\345\256\236\347\216\260\344\270\244\344\270\252\345\244\232\351\241\271\345\274\217\347\233\270\344\271\230\347\232\204\350\277\220\347\256\227" "b/2209040022/chapter 2/\345\256\236\347\216\260\344\270\244\344\270\252\345\244\232\351\241\271\345\274\217\347\233\270\344\271\230\347\232\204\350\277\220\347\256\227" new file mode 100644 index 00000000..56e40cac --- /dev/null +++ "b/2209040022/chapter 2/\345\256\236\347\216\260\344\270\244\344\270\252\345\244\232\351\241\271\345\274\217\347\233\270\344\271\230\347\232\204\350\277\220\347\256\227" @@ -0,0 +1,114 @@ +#include +#include + struct term { + float coe; + float exp; + struct term *next; +}; +struct term* allocate(size_t size) { + struct term* ptr = (struct term*) malloc (size); + if (ptr == NULL) { + fprintf(stderr, "内存分配失败"); + exit(EXIT_FAILURE); + } + return ptr; +} +struct term* createterm (float coe, float exp) { + struct term* newterm = allocate (sizeof (struct term)); + newterm->coe = coe; + newterm->exp = exp; + newterm->next = NULL; + return newterm; +} +void insertterm (struct term** head, struct term* newterm) { + if (*head == NULL || (*head)->exp < newterm->exp) { + newterm->next = *head; + *head = newterm; + } else { + struct term* current = *head; + while (current->next != NULL && current->next->exp > newterm->exp) { + current = current->next; + } + newterm->next = current->next; + current->next = newterm; + } +} +void print (struct term* head) { + struct term* current = head; + while (current != NULL) { + printf("%.2fX^%.2f", current->coe, current->exp); + current = current->next; + if (current != NULL) { + printf(" + "); + } + } + printf("\n"); +} +struct term* add (struct term* p1, struct term* p2) { + struct term* head = NULL; + while (p1 != NULL && p2 != NULL) { + if (p1->exp > p2->exp) { + insertterm(&head, createterm(p1->coe, p1->exp)); + p1 = p1->next; + } else if (p1->exp < p2->exp) { + insertterm(&head, createterm(p2->coe, p2->exp)); + p2 = p2->next; + } else { + float sum = p1->coe + p2->coe; + if (sum != 0) { + insertterm(&head, createterm(sum, p1->exp)); + } + p1 = p1->next; + p2 = p2->next; + } + } + while (p1 != NULL) { + insertterm(&head, createterm(p1->coe, p1->exp)); + p1 = p1->next; + } + while (p2 != NULL) { + insertterm(&head, createterm(p2->coe, p2->exp)); + p2 = p2->next; + } + return head; +} +void freelist(struct term* head) { + struct term* current = head; + while (current != NULL) { + struct term* temp = current; + current = current->next; + free(temp); + } +} + int main() { + struct term* p1 = NULL; + printf("请输入多项式1的项数:"); + int n1; + scanf("%d", &n1); + for (int i =0; i < n1; i++) { + float coe, exp; + printf("请输入第%d项的系数和指数(空格分开):",i+1); + scanf("%f %f",&coe, &exp); + insertterm(&p1, createterm(coe,exp)); + } + struct term* p2 = NULL; + printf("请输入多项式2的项数:"); + int n2; + scanf("%d", &n2); + for (int i =0; i < n2; i++) { + float coe, exp; + printf("请输入第%d项的系数和指数(空格分开):",i+1); + scanf("%f %f",&coe, &exp); + insertterm(&p2, createterm(coe,exp)); + } + struct term* result = add(p1,p2); + printf("多项式1:"); + print(p1); + printf("多项式2:"); + print(p2); + printf("相加结果:"); + print(result); + freelist(p1); + freelist(p2); + freelist(result); +} \ No newline at end of file -- Gitee