C语言I博客作业11

这个作业属于那个课程 c语言程序设计I
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/10131
我在这个课程的目标是 熟练掌握c语言,学会怎样去做好表格,统计图,流程图等
这个作业在哪个方面帮我具体实现目标 熟悉了函数的定义和使用,了解了变量与函数的关系
参考文献 《c语言程序设计(第3版)》

1.PTA实验作业(20分/题)

请再此处列出自己的排名图片;

从PTA题目集中选出2个你最满意的题目完成以下内容,选择题目难度越大,分值越高,每题20分(每项5分);

1.1统计某类完全平方数 (20分)

本题要求实现一个函数,判断任一给定整数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数据处理

介绍实现本题过程中,你的数据表达、数据处理是怎么做的。

数据表达:int r=sqrt(N),n=N,d,a[10]={0}。
数据处理:伪代码
int IsTheNumber ( const int N ){  //函数名
    int r←sqrt(N),n←N,d,a[10]←{0};  //变量定义
if r的平方等于N
   then whine(n)
             do d←n%10;
                a[d]←a[d]+a[1];
                if a[d]等于2
                   then  return 1;
        n←n%10;
return 1;    

1.1.2实验代码截图

贴图展示代码,不要复制。请给出名字标识。
C语言I博客作业11_第1张图片

1.1.3 造测试数据

输出你的程序面向各种测试数据结果,除了题目给出的测试数据,可以自己再造其他临界数据,越多越好,并加上必要说明。

输入输出样例

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

随机取值

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

1.1.4 PTA提交列表及说明

根据PTA提交列表,简要描述调试程序碰到的问题及解决办法。

提交列表说明:

部分正确:没有将数组赋予相同值0。
答案正确:修改后答案正确。

1.2统计各位数字之和是5的数 (20分)

本题要求实现两个函数:一个函数判断给定正整数的各位数字之和是否等于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<ab≤10000。

裁判测试程序样例:

#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数据处理

介绍实现本题过程中,你的数据表达、数据处理是怎么做的。

数据表达:int num1,sum=0;int a, b;int number;int count=0,sum2=0,i;
数据处理:伪代码
int is( int number ){//函数名
    int num1,sum←0;//定义变量
do{
       num1←number%10;
       sum←sum+num1;
       number←number/10;
}while(number不等于0)
      if(sum等于5) 
          then  return 1;
      else
          then  return 0;
void count_sum( int a, int b ){ //函数名
    int count←0,sum2←0,i;//定义变量
    for(i等于a;i小于等于b;i累加1){
          if(is(i)){
              count←count+1;
              sum2←sum2+i;
Output count,sum2

1.2.2实验代码截图

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

1.2.3 造测试数据

输出你的程序面向各种测试数据结果,除了题目给出的测试数据,可以自己再造其他临界数据,越多越好,并加上必要说明

输入输出样例

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

随机取值

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

1.2.4 PTA提交列表及说明

根据PTA提交列表,简要描述调试程序碰到的问题及解决办法。

提交列表说明:

多种错误:输出格式错误,输出时忘记空格。部分答案错误,循环语句错误。
答案正确:修改后答案正确

2.代码互评(5分)

找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。

统计某类完全平方数 (20分)

同学1代码截图

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

同学2代码截图

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

自己代码截图

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

1.第一位同学返回值的表达方式与我不同
2.第二位同学的代码行数相比更少,我的更精简

3.学习总结(15分)

3.1 学习进度条(5分)

周/日期 这周所花的时间 代码行 学到的知识点 目前比较迷惑的问题
4/9-17 6 50 接触c语言,输出Hello World!
5/9-24 20 200 如何向别人提出问题,顺序结构 在完成PTA过程时总是被警告:忽略使用属性声明的"scanf"返回值
7/10-8 24 350 if-else判断结构,余数表示,逻辑"或"逻辑"与" 同上
8/10-15 20 400 for循环结构
9/10-22 23 415 函数定义,while循环与for循环的区别
10/10-29 20 390 多分支结构、字符型数据类型和逻辑运算符
11/11-4 24 400 switch语句结构
12/11-11 20 450 while和do-while结构
13/11-21 15 300 break、continue,return的区别,学会了使用循环的嵌套解决问题
14/11-26 20 400 复习了一下以前所学的内容
15/112-3 17 370 熟悉了函数的定义和使用,了解了变量与函数的关系 对外部变量和全局变量还不是很了解

3.2 累积代码行和博客字数(5分)

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

3.3 学习内容总结和感悟(5分)

3.3.1 学习内容总结

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

3.3.2 学习体会

这周的课程比较多,同时还要排练节目,导致学习时间大量减少。现在临近期末考试,觉得自己需要合理分配时间进行复习。不会的就去翻书,去百度搜索,而不是不管的扔在一边不去解决。

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