From 65eed8f70f704675f854468781181cb39da7d377 Mon Sep 17 00:00:00 2001 From: xtaodada Date: Mon, 6 Dec 2021 23:40:38 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=B8=83=E7=AB=A0=20=E5=87=BD?= =?UTF-8?q?=E6=95=B0=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 07-1/1/README.md | 50 ++++++++++++++++++++++++++++++ 07-1/1/exam2.c | 49 ++++++++++++++++++++++++++++++ 07-1/2/README.md | 46 ++++++++++++++++++++++++++++ 07-1/2/or.c | 51 +++++++++++++++++++++++++++++++ 07-1/3/README.md | 46 ++++++++++++++++++++++++++++ 07-1/3/and.c | 48 +++++++++++++++++++++++++++++ 07-1/4/README.md | 58 +++++++++++++++++++++++++++++++++++ 07-1/4/add.c | 79 ++++++++++++++++++++++++++++++++++++++++++++++++ 07-1/5/README.md | 58 +++++++++++++++++++++++++++++++++++ 07-1/5/exam2.c | 42 +++++++++++++++++++++++++ 07-1/README.md | 3 ++ README.md | 6 ++++ 12 files changed, 536 insertions(+) create mode 100644 07-1/1/README.md create mode 100644 07-1/1/exam2.c create mode 100644 07-1/2/README.md create mode 100644 07-1/2/or.c create mode 100644 07-1/3/README.md create mode 100644 07-1/3/and.c create mode 100644 07-1/4/README.md create mode 100644 07-1/4/add.c create mode 100644 07-1/5/README.md create mode 100644 07-1/5/exam2.c create mode 100644 07-1/README.md diff --git a/07-1/1/README.md b/07-1/1/README.md new file mode 100644 index 0000000..0ecd49f --- /dev/null +++ b/07-1/1/README.md @@ -0,0 +1,50 @@ +【问题描述】 + +从标准输入中输入两组整数(每行不超过20个整数,每组整数中元素不重复),合并两组整数,去掉在两组整数中都出现的整数,并按从小到大顺序排序输出(即两组整数集“异或”)。 + +【输入形式】 + +首先输入第一组整数的个数,再输入第一组整数,以空格分隔;然后输入第二组整数的个数,再输入第二组整数,以空格分隔。 + +【输出形式】 + +按从小到大顺序排序输出合并后的整数(去掉在两组整数中都出现的整数),输出整数间以一个空格分隔,最后不含回车符。 + +【样例输入】 + +``` +8 +5 1 4 3 8 7 9 6 +4 +5 2 8 10 +``` + +【样例输出】 + +``` +1 2 3 4 6 7 9 10 +``` + +【样例说明】 + +第一组整数个数为8,分别为5 1 4 3 8 7 9 6,第二组整数个数为4,分别为5 2 8 10。将第一组和第二组整数合并(去掉在两组整数中都出现的整数),并从小到大顺序排序后结果为1 2 3 4 6 7 9 10。 + +【评分标准】 + +结果完全正确得25分,每个测试点5分,提交程序文件名为 `exam2.c` 。 + +# 运行结果 + +成功通过编译, 且无编译警告 + +共有测试数据:5 +平均占用内存:1.943K +平均CPU时间:0.00562S +平均墙钟时间:0.00564S + +测试数据 评判结果 +测试数据1 完全正确 +测试数据2 完全正确 +测试数据3 完全正确 +测试数据4 完全正确 +测试数据5 完全正确 diff --git a/07-1/1/exam2.c b/07-1/1/exam2.c new file mode 100644 index 0000000..6082ad2 --- /dev/null +++ b/07-1/1/exam2.c @@ -0,0 +1,49 @@ +#include + +int test_if_have_value(int a[20],int c[40], int n, int n_, int value){ + int temp=1; + for (int i = 0; i < n; i++) { + if (a[i] == value){ + temp=0; + } + } + if(temp){ + c[n_]=value; + n_++; + } + return n_; +} +int main() +{ + int a[20],b[20],c[40],n_=0,n1,n2,temp; + scanf("%d",&n1); + for(int i=0;ic[j]){ + temp=c[i]; + c[i]=c[j]; + c[j]=temp; + } + } + } + + for(int i=0;i + +int test_if_have_value(int c[40], int n, int value){ + int temp=1; + for (int i = 0; i < n; i++) { + if(c[i]==value) temp=0; + } + if(temp){ + c[n]=value; + n++; + } + return n; +} +int main() +{ + int a[20],b[20],c[40],n_=0,n1=0,n2=0,temp; + for(int i=0,j;i<21;i++){ + scanf("%d",&j); + if(j==-1) break; + a[i]=j; + n1++; + } + for(int i=0,j;i<21;i++){ + scanf("%d",&j); + if(j==-1) break; + b[i]=j; + n2++; + } + + for(int i=0;ic[j]){ + temp=c[i]; + c[i]=c[j]; + c[j]=temp; + } + } + } + + for(int i=0;i + +int test_if_have_value(int b[20], int c[40], int n, int n_, int value){ + int temp=0; + for (int i = 0; i < n; i++) { + if(b[i]==value) temp=1; + } + if(temp){ + c[n_]=value; + n_++; + } + return n_; +} +int main() +{ + int a[20],b[20],c[40],n_=0,n1=0,n2=0,temp; + for(int i=0,j;i<21;i++){ + scanf("%d",&j); + if(j==-1) break; + a[i]=j; + n1++; + } + for(int i=0,j;i<21;i++){ + scanf("%d",&j); + if(j==-1) break; + b[i]=j; + n2++; + } + + for(int i=0;ic[j]){ + temp=c[i]; + c[i]=c[j]; + c[j]=temp; + } + } + } + + for(int i=0;i +#include + +int add(char a, char b,int jinwei){ + return a-48+b-48+jinwei; +} +int str_move(char a[80],int n){ + for(int i=0;i=0;i--){ + a[i+1] = a[i]; + } + a[n+1] = '\0'; + a[0] = '0'; +} +int main(){ + char a[90],b[90],c[90]; + int n,n_,max,max_,temp,jinwei=0; + + scanf("%s %s", a, b); + n=strlen(a); + n_=strlen(b); + + for(int i=0;in) { + max_ = max = n_; + while(1){ + str_extend(a,n); + n=strlen(a); + if(n==n_) break; + } + + } + if(n>n_) { + while(1){ + str_extend(b,n_); + n_=strlen(b); + if(n==n_) break; + } + } + + if(add(a[0],b[0],0)>9) { + max_++; + c[max] = '\0'; + c[0] = '1'; + } + + for(int i=0;i9) jinwei = 1; + else jinwei = 0; + c[max_-1-i] = temp%10 + 48; + } + + for(int i=0;i + +int get_h_min(int a[10][10], int h, int l){ + int temp=a[h][0]; + for(int i=1;i 作业时间: 2021-11-21 10:01:00 至 2021-12-18 10:00:00 diff --git a/README.md b/README.md index 50a9c00..eae7262 100644 --- a/README.md +++ b/README.md @@ -69,3 +69,9 @@ A repo to record my study life. - [实验七 指针(2学时)](https://github.com/xtaodada/C-study/tree/master/07) - [1. 利用指针,设计子函数实现求两个数的和差积商](https://github.com/xtaodada/C-study/tree/master/07/1) - [2. 对一组数据置逆,查找操作](https://github.com/xtaodada/C-study/tree/master/07/2) +- [第六章 指针作业](https://github.com/xtaodada/C-study/tree/master/07-1) + - [1. 数组异或](https://github.com/xtaodada/C-study/tree/master/07-1/1) + - [2. 求两组整数的并集2](https://github.com/xtaodada/C-study/tree/master/07-1/2) + - [3. 求两组整数的交集a](https://github.com/xtaodada/C-study/tree/master/07-1/3) + - [4. 超长正整数的加法](https://github.com/xtaodada/C-study/tree/master/07-1/4) + - [5. 二维整型数组的“最小点”](https://github.com/xtaodada/C-study/tree/master/07-1/5)