• c语言博客作业09


    c语言程序设计 2020级计算机3班
    作业要求 作业要求
    课程的目标 掌握各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类型
    这个作业在哪个具体方面帮助我实现目标 PTA作业练习,代码比较,学习内容总使用
    参考文献 C语言程序设计
    学号 20209025

    .1PTA实验作业

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

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

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

    裁判测试程序样例:

    include <stdio.h>

    include <math.h>

    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
    ", cnt);
    
    return 0;
    

    }

    /* 你的代码将被嵌在这里 */
    输入样例:

    105 500
    输出样例:

    cnt = 6

    1.1.1数据处理

    介绍实现本题过程中,你的数据表达、数据处理是怎么做的。注意:请务必按照以下方式书写。

    数据表达:整形变量 const int N ;
    x=sqrt(N);
    A,b;
    数据处理:if(A==N){
    int a[100]={0};
    while(A>0){
    b=A%10;
    a[b]=a[b]+1;
    if(a[b]>=2)
    return 1;
    A/=10;

    1.1.2实验代码截图

    贴图展示代码,不要复制。请给出名字标识。

    1.1.3 造测试数据

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

    输入数据 输出数据 说明
    105 500 cnt=6 三位数
    3333 4444 cnt=5 四位数
    -3 -9 cnt=0 负数
    1.1.4 PTA提交列表及说明

    说明:.1出现编译错误的原因是英文单词写错,把sqrt写成了squrt,

    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<a≤b≤10000。

    1.2.1 数据处理

    数据表达:整形变量:int number
    int sum = 0;
    int a, int b
    数据处理:if-else语句
    while语句

    1.2.2 实验代码截图

    1.2.3造测试数据

    | 输入数据 | 输出数据 |
    | ---- | ---- | ---- |
    | 104 999 | 104 is counted.count = 15, sum = 3720 |
    | 5 888 | 5 is counted.count = 21, sum = 3885 |

    1.2.4 PTA提交列表及说明

    说明:.1格式错误,在输出的时候没有注意格式,最后的输出结果之间没有打空格符。

    2.代码互评

    同学一:

    同学二

    自己代码截图:

    不同之处:

    .1同学一的代码很简洁,比起我的更简单,更容易让人理解。
    .2同学二用的方法与我的一样,就是表达式不同。

    3.学习总结

    3.1
    周/日期 这周所花的时间 代码行 所学到的知识点
    第一周 6小时 27行 Hello World!代码
    第二周 6.7小时 76行 常量,变量等数据类型
    第三周 8小时 154行 if-else语句和for循环语句的使用
    第四周 9小时 160行 调用与自定义函数
    第五周 6小时 157行 else-if多分支结构
    第六周 7小时 240行 switch多分支结构的使用
    第七周 8小时 314行 while和do-while语句的使用
    第八周 7小时 327行 break和continue语句的使用
    第九周 7小时 334行 学习各种类型函数的定义、调用和申明,熟悉变量的作用域、生存周期和存储类
    3.2 累积代码行和博客字数(5分)

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

    3.3.2 学习体会

    .1老师讲的时候听得懂,但是自己做的时候还是做不出,感觉不够熟练,映象还不是很深,也不是很能灵活应用。

  • 相关阅读:
    JS字符串截取(获取指定字符后面的所有字符内容)
    vue图片上传插件
    php获取两个日期之间的所有日期
    laravel做定时任务时,加参数(也可缓存参数)
    前端传参数(数组,值为json字符串),后端接收json_decode()转为数组,数组为空值
    springboot的maven多模块项目
    如何给文件重命名
    springboot的get请求和post请求
    java调用ffmpeg
    mybatis批量插入List
  • 原文地址:https://www.cnblogs.com/SCY355/p/14169496.html
Copyright © 2020-2023  润新知