diff --git a/05-1/1/README.md b/05-1/1/README.md new file mode 100644 index 0000000..20a1eea --- /dev/null +++ b/05-1/1/README.md @@ -0,0 +1,71 @@ +【问题描述】 + +从键盘输入一个正整数n(n∈[1,10]),表示进行乘法运算的两个整形方阵的阶。然后分别输入两个整形方阵A和B,计算A×B后将结果输出到屏幕。 + +【输入形式】 + +从键盘输入一个正整数,然后再输入两个整形方阵。 + +【输出形式】 + +在屏幕上输出两个整形方阵的乘积。 + +【输入样例】 + +``` +3 +1 1 1 +3 3 3 +6 6 6 +9 9 9 +6 6 6 +5 5 5 +``` + +【输出样例】 + +``` +########20########20########20 +########60########60########60 +#######120#######120#######120 +``` + +【样例说明】 + +首先输入正整数3,说明接下来要输入的方阵是3×3的。因为 + +``` +1 1 1 9 9 9 20 20 20 +3 3 3 × 6 6 6 = 60 60 60 +6 6 6 5 5 5 120 120 120 +``` + +所以在屏幕上打印: + +``` +########20########20########20 +########60########60########60 +#######120#######120#######120 +``` + +注:"#"代表空格,每个输出的整数占10位,不足10位在整数的左边用空格补足。 + +【评分标准】 + +结果完全正确得20分,每个测试点4分,提交程序文件名称为c12.c。 + +# 运行结果 + +成功通过编译, 且无编译警告 + +共有测试数据:5 +平均占用内存:1.967K +平均CPU时间:0.00581S +平均墙钟时间:0.00584S + +测试数据 评判结果 +测试数据1 完全正确 +测试数据2 完全正确 +测试数据3 完全正确 +测试数据4 完全正确 +测试数据5 完全正确 diff --git a/05-1/1/c12.c b/05-1/1/c12.c new file mode 100644 index 0000000..91707d9 --- /dev/null +++ b/05-1/1/c12.c @@ -0,0 +1,31 @@ +#include + +int main(){ + int n,a[10][10],b[10][10],c[10][10]; + + scanf("%d",&n); + for(int i=0;i + +int get_max_hang(int a[10][10],int n,int l){ + int max=a[n][0]; + for(int i=0;i + +int main(){ + int a[10][10],b[10][10],n1,n2,temp; + + scanf("%d",&n1); + for(int i=0;i + +int main(){ + int n=0,k=0; + char a; + while(scanf("%c",&a)!=EOF){ + if(a=='\n'){ + break; + } + if(a==' ') { + if(k==0){ + k=1; + n++; + continue; + } + continue; + } + k=0; + } + + if(k==1){ + n--; + } + printf("%d",n+1); + return 0; +} diff --git a/05-1/4/README.md b/05-1/4/README.md new file mode 100644 index 0000000..efa1629 --- /dev/null +++ b/05-1/4/README.md @@ -0,0 +1,37 @@ +【问题描述】 + +输入一行字符(不多于80个字符),统计并输出其中的"单词"数,这里所谓"单词"就是由可显示字符组成的一子字符串,"单词"间用一个或多个空格分隔,首"单词"前和末"单词"后,可以有也可以没有空格。 + +【输入形式】 + +从键盘输入一行字符(不多于80个字符)。 + +【输出形式】 + +输出"单词"的个数。 + +【样例输入】 + +``` +abcd x1y2z3 qwe#$&% 789 * end +``` + +【样例输出】 + +``` +6 +``` + +# 运行结果 + +成功通过编译, 且无编译警告 + +共有测试数据:3 +平均占用内存:1.941K +平均CPU时间:0.00469S +平均墙钟时间:0.00469S + +测试数据 评判结果 +测试数据1 完全正确 +测试数据2 完全正确 +测试数据3 完全正确 diff --git a/05-1/5/5.c b/05-1/5/5.c new file mode 100644 index 0000000..acf5e0a --- /dev/null +++ b/05-1/5/5.c @@ -0,0 +1,15 @@ +#include + +int main() +{ + int n=30,t1=1,t2=1,t3; + + for(int i=1;i<=n;i++){ + printf("%d\t", t1); + t3 = t1+t2; + t1 = t2; + t2 = t3; + if((i%5==0)&&(i/5!=6))printf("\n"); + } + return 0; +} diff --git a/05-1/5/README.md b/05-1/5/README.md new file mode 100644 index 0000000..3a388f3 --- /dev/null +++ b/05-1/5/README.md @@ -0,0 +1,41 @@ +【问题描述】 + +用数组计算fibonacci数列的前30个数,并按每行打印5个数的格式输出。间隔为tab。 + +【输入形式】 + +【输出形式】 + +``` +1 1 2 3 5 + +8 13 21 34 55 + +89 144 233 377 610 + +987 1597 2584 4181 6765 + +10946 17711 28657 46368 75025 + +121393 196418 317811 514229 832040 +``` + +【样例输入】 + +【样例输出】 + +【样例说明】 + +【评分标准】 + +# 运行结果 + +成功通过编译, 且无编译警告 + +共有测试数据:1 +平均占用内存:1.902K +平均CPU时间:0.00419S +平均墙钟时间:0.00420S + +测试数据 评判结果 +测试数据1 完全正确 diff --git a/05-1/6/README.md b/05-1/6/README.md new file mode 100644 index 0000000..06e08fc --- /dev/null +++ b/05-1/6/README.md @@ -0,0 +1,57 @@ +【问题描述】 + +比较两组整数是否有相同的元素,每组整数个数不超过100。若有相同的元素,则按照由大到小的顺序输出相同的元素(重复出现的元素只输出一个)。如果没有相同元素,打印字符串:No Answer。 + +【输入形式】 + +首先从标准输入(键盘)输入第一组整数的个数,再输入第一组整数,以一个空格分割;然后输入第二组整数的个数,再输入第二组整数,以一个空格分割。 + +【输出形式】 + +按照由大到小的顺序向标准输出(显示器)输出两组整数中相同的元素,以一个空格分隔;如果没有相同元素,则打印“No Answer”。 + +【输入样例】 + +``` +9 +2 5 10 17 10 8 5 10 12 +7 +12 8 10 17 5 2 1009 +``` + +【输出样例】 + +``` +17 12 10 8 5 2 +``` + +【样例说明】 + +输入两组整数 + +``` +2 5 10 17 10 8 5 10 12 +12 8 10 17 5 2 1009 +``` + +由于这两个数组具有相同的元素,按照由大到小的顺序输出为:`17 12 10 8 5 2`。 + +【评分标准】 + +该题要求输出相同元素,共5个测试点。提交程序文件名为exam1.c。 + +# 运行结果 + +成功通过编译, 且无编译警告 + +共有测试数据:5 +平均占用内存:1.942K +平均CPU时间:0.00536S +平均墙钟时间:0.00537S + +测试数据 评判结果 +测试数据1 完全正确 +测试数据2 完全正确 +测试数据3 完全正确 +测试数据4 完全正确 +测试数据5 完全正确 diff --git a/05-1/6/exam1.c b/05-1/6/exam1.c new file mode 100644 index 0000000..c9e2987 --- /dev/null +++ b/05-1/6/exam1.c @@ -0,0 +1,49 @@ +#include + +int test_if_have_value(int a[100],int n,int value){ + for(int i=0;i 作业时间: 2021-11-16 19:45:00 至 2021-12-05 23:55:00 diff --git a/CMakeLists.txt b/CMakeLists.txt index 81d0286..86ec090 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,11 @@ +add_executable(CMakeLists CMakeLists.txt) add_executable(1 05/1/1.c) add_executable(2 05/2/2.c) add_executable(no 05/3/no.c) add_executable(c0604 05/4/c0604.c) -add_executable(CMakeLists CMakeLists.txt) \ No newline at end of file +add_executable(c12 05-1/1/c12.c) +add_executable(exam1b 05-1/2/exam1b.c) +add_executable(example2b 05-1/3/example2b.c) +add_executable(4 05-1/4/4.c) +add_executable(5 05-1/5/5.c) +add_executable(exam1 05-1/6/exam1.c) \ No newline at end of file diff --git a/README.md b/README.md index afca73b..2dae4c4 100644 --- a/README.md +++ b/README.md @@ -49,3 +49,10 @@ A repo to record my study life. - [2. 查找最大最小整数](https://github.com/xtaodada/C-study/tree/master/05/2) - [3. 给一个整型数组编号a](https://github.com/xtaodada/C-study/tree/master/05/3) - [4. 回文判断](https://github.com/xtaodada/C-study/tree/master/05/4) +- [第五章 作业](https://github.com/xtaodada/C-study/tree/master/05-1) + - [1. 方阵乘法运算](https://github.com/xtaodada/C-study/tree/master/05-1/1) + - [2. 二维整型数组的“最大点”](https://github.com/xtaodada/C-study/tree/master/05-1/2) + - [3. 判断一个矩阵是另一个矩阵的子矩阵](https://github.com/xtaodada/C-study/tree/master/05-1/3) + - [4. 统计“单词”数](https://github.com/xtaodada/C-study/tree/master/05-1/4) + - [5. 使用数组编程计算fibonacci数列的前30个数](https://github.com/xtaodada/C-study/tree/master/05-1/5) + - [6. 比较两组整数(新)](https://github.com/xtaodada/C-study/tree/master/05-1/6)