• 第五周编程总结


    第五周作业

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

    输入格式:

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

    在一行中输出单词个数。
    输入样例:

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

    5
    (一)实验代码:

    include<stdio.h>

    int main()
    {
    int i,count=0,number=0;
    char c,string[10000];
    gets(string);
    for(i=0;(c=string[i])!='';i++) /*
    if(c' ')
    number=0;
    else if(number
    0){
    number=1;
    count++;
    }
    printf("%d ",count);
    return 0;
    }
    (二)设计思路

    (三)实验遇到的问题及解决方案
    在老师详细的讲解一维字符数组的定义及引用,加入字符串这个东西,本题一遍过
    运行结果截图

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

    输入格式:

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

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

    blue
    red
    yellow
    green
    purple

    输出样例:

    red blue green yellow purple
    一 实验代码

    include<stdio.h>

    include<stdlib.h>

    include<string.h>

    int main(void)
    {
    FILE *fp;
    char a[21][11] = { '' };
    char s[11] = { '' };
    int q, j = 0, len;

    fp=fopen("D:\Users\Administrator\Documentsc\语言作业\zoujian.txt","r+");
        
    while (1) {   
        scanf("%s", a[q]);
        fscanf(fp,"%s", &a[q]);
        
        if (a[q][0] == '(')
            break;
        q++;
    }
    len = q; 
    for (q = 0; q < len-1; q++)
    {
        for (j = 1; j < len - q; j++)
        {
            if (strlen(a[j - 1]) > strlen(a[j]))
            {
                strcpy(s, a[j - 1]);
                strcpy(a[j - 1], a[j]);
                strcpy(a[j], s);
            }
        }
    }
    
    for (q = 0; q < len; q++)
        printf("%s ", a[q]);
        
    fprintf(fp,"
    ");
    
    for(q = 0; q < len; q++)
        fprintf(fp,"%s ", a[q]);
        
    fclose(fp);
    
    return 0;
    } 
    

    设计思路


    本题遇到的问题及解决方法

    刚开始一直用PTA上的输入样例:

    blue
    red
    yellow
    green
    purple

    运行半天弄不成结果,后来仔细看了老师的题目要求
    英文单词输入的结束标记为你学号最后一位数+37所对应的ASCII字符,才发现需要把#改成(,
    因为我的学号末尾数为3加上37对应的ASCII字码为(,然后就运行正确了

    运行结果

    第五周预习题

    (二)预习内容
    预习了指针这一新内容,顾名思义指针就是用来存放变量地址的变量,懂得了指针变量的可以通过指针找到所需要访问变量的地址。定义指针变量时要加上指针声明符,说明所定义变量是指针,此外还预习了定义指针变量所需要注意的几点。指针变量同其他变量一样具有地址和数值。使用运算符&可以得到指针本身的地址。.不能对未初始化的指针变量取值,.运算符*可取出指针变量指向地址中存储的数值。

    预习困惑
    不知道两个同类型的指针变量可不可以相加减乘除
    结对编程:

    两个人对编写程序的熟练度都不高,也很容易出现一些小问题,或者根本就不知道某些地方该怎么写,后来向大佬求助,才慢慢的到好转,总体来说还可以
    学习感悟
    本周学习了字符串与一维字符数组的区别、字符串的存储以及字符串的操作方法,对字符串数组还不太会用,还预习了指针,但是指针比较难,还看不太懂。

  • 相关阅读:
    pgpoolII3.1 的内存泄漏(二)
    iOS 开发的一些网址
    ios开发必备第三方库
    iOS截屏方法
    ios开发第三方库cocoapods安装
    iOS开发知识点总结
    iOS开发文件夹Copy items if needed
    iOS开源库最全的整理
    iOS图标抖动效果
    iOS 加密的3种方法
  • 原文地址:https://www.cnblogs.com/ZJ999999/p/10622257.html
Copyright © 2020-2023  润新知