C语言I博客作业11

本周作业头

问题 答案
这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-3/homework/10126
我在这个课程的目标是 学习函数,并掌握各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类型。
这个作业在那个具体方面帮助我实现目标 完成PTA作业
参考文献 《C语言程序设计》,百度百科

1.PTA实验作业

1.1 题目1:本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。

函数接口定义:

int IsTheNumber ( const int N );

其中N是用户传入的参数。如果N满足条件,则该函数必须返回1,否则返回0。

裁判测试程序样例:

#include 
#include 

int IsTheNumber ( const int N );
int main()
{
    int n1, n2, i, cnt;
    
    scanf("%d %d", &n1, &n2);
    cnt = 0;
    for ( i=n1; i<=n2; i++ ) {
        if ( IsTheNumber(i) )
            cnt++;
    }
    printf("cnt = %d\n", cnt);

    return 0;
}

/* 你的代码将被嵌在这里 */

输入样例:

105 500

输出样例:

cnt = 6

1.1.1 数据处理

  • 数据表达:使用了整形变量x,y,a,b变量,使用了数组表达;
  • 数据处理:伪代码:
    C语言I博客作业11_第1张图片

1.1.2 实验代码截图

C语言I博客作业11_第2张图片

1.1.3 造测试数据

输入数据 输出数据 说明
105 500 cnt = 6 有6个数满足条件
100 400 cnt = 5 有5个数满足条件
200 600 cnt = 6 有6个数满足条件

1.1.4 PTA提交列表及说明

  • Q1.编译错误
  • A1:使用了错误的变量写入代码

1.2 题目2:本题要求实现两个函数:一个函数判断给定正整数的各位数字之和是否等于5;另一个函数统计给定区间内有多少个满足上述要求的整数,并计算这些整数的和。

函数接口定义:

int is( int number );
void count_sum( int a, int b );

函数is判断number的各位数字之和是否等于5,是则返回1,否则返回0。

函数count_sum利用函数is统计给定区间[a, b]内有多少个满足上述要求(即令is返回1)的整数,并计算这些整数的和。最后按照格式

count = 满足条件的整数个数, sum = 这些整数的和
进行输出。题目保证0

裁判测试程序样例:

#include 
#int is( int number );

void count_sum( int a, int b );
int main()
{
    int a, b;
    scanf("%d %d", &a, &b);
    if (is(a)) printf("%d is counted.\n", a);
    if (is(b)) printf("%d is counted.\n", b);
    count_sum(a, b);

    return 0;
}

/* 你的代码将被嵌在这里 */

输入样例:

104 999

输出样例:

104 is counted.
count = 15, sum = 3720

1.2.1 数据处理

  • 数据表达:使用了整形变量s,t,n,while语句以及if-else语句;
  • 数据处理:伪代码:
    C语言I博客作业11_第3张图片

1.2.2 实验代码截图

C语言I博客作业11_第4张图片

1.2.3 造测试数据

输入数据 输出数据 说明
104 999 104 is counted/count = 15, sum = 3720 满足条件,且个数为15个,整数和为3720
100 125 104 is counted/count = 3, sum = 339 满足条件,且个数为3个,整数和为339
200 800 203 is counted/count = 10, sum = 3110 满足条件,且个数为10个,整数和为3110

1.2.4 PTA提交列表及说明

2.代码互评

同学代码截图

(来自软件三班李志玉同学的代码)
C语言I博客作业11_第5张图片

自己代码截图

C语言I博客作业11_第6张图片

说明:

  • 1.我们使用了不同的整形变量,但作用类型差不多;
  • 2.我们使用不同的变量来定义一个数量为10的数组;
  • 3.方法大致相同,但她的代码更简便一点。

同学代码截图

(来自软件三班李志玉同学的代码)
C语言I博客作业11_第7张图片
C语言I博客作业11_第8张图片

自己代码截图

C语言I博客作业11_第9张图片

说明:

  • 1.采用了不同的整形变量来表达求数和求和,都使用了while和if-else语句;
  • 2.她先定义digit表示位数最终用sum进行累加,而我先用t,s变量表示,后面再引入。

3.学习总结

3.1 学习进度条

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第一周 四个小时 40行 初步接触编程与c语言,在电脑上显示Hello World 对所有编程的事物都很懵
第二周 十二个小时 65行 了解MinGW-w64安装教程并完成了GCC编译器的安装,并用 MinGW-w64 来编译 C程序 不是很熟练地掌握安装和编译
第三周 十五个小时 100行 练习对表格的使用和PTA里的题目,对编程开始提高速度和准确性 有些难的编程题目是真的很难做动
10.14~10.20 20小时 150行 学习指定次数的循环程序设计,以及power的用法 循环程序的题型很多,有些也比较复杂,不是很容易理解
10.20~10.27 20小时 180行 能模仿编程,认识函数,编辑思维导图 用C语言编写程序生成乘方表与阶乘表没有很掌握好
第十周 32小时 526行 多分支结构、字符型数据类型和逻辑运算符 循环类的题目没有完全掌握
第十一周 40小时 760行 学会用switch语句 对于break语句的一般的三种使用方法没有运会得当
第十二周 42小时 805行 使用while和do-while结构解决问题 对新学习的循环语句没有掌握好
第十三周 35小时 1000行 学习break、continue的使用,学习使用循环的嵌套解决问题 对continue语句的使用还有一些困扰
第十四周 32小时 1200行 熟悉掌握循环语句的所有结构 写挑战题时很难下笔
第十五周 36小时 1450行 学习函数的语法,掌握各种类型函数的定义、调用和申明 对变量的生存周期和存储类型有点困扰

3.2 累积代码行和博客字数

C语言I博客作业11_第10张图片

3.3 学习内容总结和感悟

3.3.1 学习内容总结

C语言I博客作业11_第11张图片

3.3.2 学习体会

  • 1.这周新学习了几种函数语法,感觉理解起来有点难度,得好好的学;
  • 2.发现这周的PTA作业有点多,而且编程题有点难度,做题目花的时间也较多;
  • 3.这已经是第十五周了,已经是快临近期末啦,对于期末的考试还是有点紧张的。毕竟,自己的掌握的知识点不多而且不牢固,要多花时间去复习,备战期末。

你可能感兴趣的:(C语言I博客作业11)