• 第五周编程总结


    一、作业

    这个作业属于哪个课程 C语言程序设计ll
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/software-engineering-class2-2018/homework/2824)
    我在这个课程的目标是 掌握字符(串)数组的相关知识
    这个作业在哪个具体方面帮助我实现目标 这次作业让我大概了解了使用字符串编程,加强了进一步的学习
    参考文献 https://www.jb51.net/article/37456.htm)

    预习题

    7-1 统计一行文本的单词个数

    本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。

    输入格式:
    输入给出一行字符。

    输出格式:
    在一行中输出单词个数。

    输入样例:
    Let's go to room 209.
    输出样例:
    5

    1、实验代码

    #include<stdio.h>
    #include<string.h>
    int main(void)
    {
        int i, num, sum;
        char str[1000];
        
        gets(str);
        num = strlen(str);   
        
        if(str[0] == ' ')
        {
            sum = 0;
        }
        else
        {
            sum = 1; 
        }
        
        for(i=0; i<num-1; i++)
        {
            if(str[i] == ' '&&str[i+1] != ' ') 
            {
              sum++;    
            }
        }
        printf("%d", sum);
        return 0;
    }
    

    2、设计思路

    3、本题调试过程碰到问题及解决办法:

    问题:
    1.定义数组是数组长度不够
    2.输出时的空格没注意
    解决办法:
    第二个问题我是通过对比琛姐的代码,发现的。

    4、运行结果截图:

    基础题

    7-1 英文单词排序

    本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。

    输入格式:
    输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20个,英文单词为长度小于10的仅由小写英文字母组成的字符串。

    输出格式:
    输出为排序后的结果,每个单词后面都额外输出一个空格。

    输入样例:
    blue
    red
    yellow
    green
    purple

    输出样例:
    red blue green yellow purple

    1、实验代码

    #include<stdio.h>
    #include<string.h>
    int main(void)
    {
        char len[10];
        char input[21][10], a[20];
        int i=0, k, num;
        
        while(1)
        {
            scanf("%s", &a);
            if(a[0]=='#')
            {
                break;
            }
            else{
                strcpy(input[num], a) ;
                
                num++;
            }
            i++;
        }
        num=i;
        input[i][0]='';
        
        for(i=0; i<num; i++)
        {
            for(k=1; k<num-i; k++)
            {
                if(strlen(input[k-1])>strlen(input[k]))
                {
                    strcpy(len,input[k-1]);
                    strcpy(input[k-1],input[k]);
                    strcpy(input[k],len);
                }
            }
        }
        for(i=0; i<num; i++)
        {
            printf("%s ", input[i]);
        }
        return 0;
    }
    

    2、设计思路

    3、本题调试过程碰到问题及解决办法:

    问题:出现了段错误,但是找不到原因
    找大佬解决的

    4、运行将结果截图

    预习题

    (1)预习的主要内容

    指针

    (2)完成情况截图

    二、学习进度条

    周/日期 这周所花的时间 代码行数 学到的知识点简介 目前比较迷惑的问题
    2/25-3/3 48h 45 数组的认识及用法 数组长度的理解
    3/4-3/10 36h 37 编写程序时处理文件 fscanf与fprintf的具体用法
    3/11-3/17 46h 55 定义文件,以及文件的导入导出和读写 二维数组的用法、上三角的判断及文件的处理
    3/17-3/22 15h 66 选择排序法、二分查找法 不清楚选择排序法和冒泡排序法的区别
    3/25-3/29 39h 73 字符串的定义及其使用 指针的具体使用

    3、学习感悟

    (1) 学习内容:

    1. 字符串与一维字符数组的区别
    2. 字符串的存储以及字符串的操作方法
      收获:自从上周自己完全靠自己的思路写出了一个程序后,发现自己比上个学期懵懵懂懂编程的状态好多了,现在比较能够明确的知道自己的思路,也可以更快的找出一些错误。本周学会了字符串及其的使用。

    4、结对编程感想

    感觉自身的能力不足,拖累了我的队友,有许多的事情都是麻烦我队友解决的,我也要多多学习,希望能有更加大的进步!

  • 相关阅读:
    浅析VO、DTO、DO、PO的概念、区别和用处
    serialVersionUID的作用
    Eclipse Debug提示source not found解决方案
    eclipse的块选择模式
    Java工程Properties配置文件注释中文,会自动转换为其他编码方式问题解决 中文乱码
    spring boot1.5以上版本@ConfigurationProperties取消location注解后的替代方案 cannot resolve method location
    c++11多线程
    多媒体指令(AVX加速数组求和)
    oracle数据库occi接口写入中文乱码解决方法
    c++得到窗口句柄
  • 原文地址:https://www.cnblogs.com/wuhao94/p/10624019.html
Copyright © 2020-2023  润新知