ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

第五周编程总结

2019-03-29 20:54:14  阅读:339  来源: 互联网

标签:总结 ch 编程 英文单词 单词 第五 && 输入 指针


一、作业

这个作业属于哪个课程 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> 
int main()
{
    int n=0;
    char a,m=' ';
    while(a!='\n'){
        scanf("%c",&a);
        if(a==' '&&m!=' '||a=='\n'&&m!=' '){
            n++;
        }
        m=a;
    }
    printf("%d",n);
    return 0;
}

2、设计思路

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

问题如下:
1.以空格开头会算一个单词。
2.结尾没有空格所以最后一个单词没加。
解决办法:将if(a==' '&&m!=' '){改为if(a==' '&&m!=' '||a=='\n'&&m!=' '){,将第5行m改为m=' ',将11行改为m=a;,问题得以解决。

4、运行结果截图:

基础题

7-1 英文单词排序

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

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

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

输入样例:
blue
red
yellow
green
purple

输出样例:
red blue green yellow purple

1、实验代码

#include<stdio.h>
#include<string.h>
#include<stdlib.h> 
int main (void)
{
    FILE*fp;
    char  ch[20][10],a[20];
    int h,l,n;
    if((fp=fopen("D:\\helei.txt","a+"))==NULL){
        printf("File open error!\n");
        exit(0); 
    }
    while(1){
        fscanf(fp,"%s", ch[n]);
        if(ch[n][0]==','){
            break;
        }
        n++;
    }
    for(h=0;h<n-1;h++)
        for(l=0;l<n-1;l++)
        {
            if(strlen(ch[l])>strlen(ch[l+1]))
            {
                strcpy(a,ch[l]);
                strcpy(ch[l],ch[l+1]);
                strcpy(ch[l+1],a);
            }
        }
        fprintf(fp,"\n",ch[h]);
        for(h=0;h<n;h++)
        {
            fprintf(fp,"%s ",ch[h]);
        }
    if(fclose(fp)){
        printf("Can not close the file!\n");
        exit(0);
}
}

2、设计思路

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

根据提示以及运行结果,仔细检查代码后发现第14、15行中应为<n-1,否则循环会进行到字符为'\n'才结束,从而导致答案错误,修改后问题得以解决

4、运行将结果截图

预习题

(1)预习的主要内容

指针变量的含义:专门用来存放变量地址的变量,用来实现间接访问;
指针的定义:类型名 * 指针变量名;
指针变量的赋值:指针的赋值是地址,int *p=&i。

(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 56h 74 判断回文,字符串的用法,预习了指针的用法 对于指针还是有许多不明白的地方

3、学习感悟

本周学习了判断回文,和一维字符数组和字符串的使用,字符串的学习还算简单,这一周对我而言还是有许多的提升,这周老师还主要给我们讲了流程图的画法,必须要还有清晰的思路,我们也要先将流程图画出来,这样有助于我们做题。还有这周预习了指针,这个还是有许多的问题。下周继续加油,坚持就是胜利!!!

4、结对编程感想

结对编程已经开始几周了,但是我们有人对于分组有些意见,有人觉得自己的队友懒,不想与其结对,也有一些人不熟悉,但是我人为结对还是很有必要的,因为只有结对才能发现自己发现不了的错误,这样才能有更大的提升,我希望我的队友可以更加的积极一点!!!

标签:总结,ch,编程,英文单词,单词,第五,&&,输入,指针
来源: https://www.cnblogs.com/zx666/p/10623761.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有