zoukankan      html  css  js  c++  java
  • 第五周编程总结

    第五周编程总结

    这个作业属于那个课程 C语言程序设计II
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/software-engineering-class1-2018/homework/2825
    我在这个课程的目标是 弄懂并在借助他人的帮助下写出代码
    这个作业在那个具体方面帮助我实现目标 新查找的string表头语句
    参考文献 教材

    1.pta基础作业

    7-1 英文单词排序 (25 分)

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

    输入格式

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

    输出格式

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

    输入样例

    blue
    red
    yellow
    green
    purple
    #
    

    输出样例

    red blue green yellow purple 
    

    1.实验代码

    #include <stdio.h>
    #include <string.h>
    main()
    {
        char dan[20][10],t[20],dan2[10];
        int i,j,n=0;
        while(1)
    {
        	scanf("%s",dan2);
        	if(dan2[0]=='#')
        {
        	break;
        	}
            else
    {
            strcpy(dan[n],dan2);
            n++;
            }
        }
        for(i=0;i<n-1;i++)
        	for(j=0;j<n-i-1;j++)
        {
                if(strlen(dan[j])>strlen(dan[j+1]))
        {
                   strcpy(t,dan[j]);
                   strcpy(dan[j],dan[j+1]);
                   strcpy(dan[j+1],t);
                }
            }
        for(i=0;i<n;i++)
    {
            printf("%s ",dan[i]);
        }
    }
    

    2.实验截图

    3.实验思路

    2.英文单词排序改文件

    博客总结需要将PTA上代码做以下修改:(1)通过以自己名字命名的文件输入英文单词,(2)英文单词输入的结束标记为你学号最后一位数+37所对应的ASCII字符。(例如:你的学号最后一位为9,则结束标记为9+37=46所对应的ASCII字符“.”)(3)在不删除原有内容的情况下,将排序后的单词输出到文件。

    1.实验代码

    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h> 
    int main(void)
    {
        FILE * fp;  
        char dan[20][10],t[20],dan2[10];
        int i,j,n=0;
    
        if((fp=fopen("E:\pta\Wjx.txt","a+"))==NULL)
        {
            printf("File open error!
    ");
            exit(0);
        }
        
         while(0==0)
    {
        	scanf("%s",dan2);
        	if(dan2[0]==',')
        {
        	break;
        	}
            else
    {
            strcpy(dan[n],dan2);
            n++;
            }
        }
        for(i=0;i<n-1;i++)
        	for(j=0;j<n-i-1;j++)
        {
                if(strlen(dan[j])>strlen(dan[j+1]))
        {
                   strcpy(t,dan[j]);
                   strcpy(dan[j],dan[j+1]);
                   strcpy(dan[j+1],t);
                }
            }
        for(i=0;i<n;i++)
    {
            printf("%s ",dan[i]);
        }
    
        fprintf(fp,"
    ");
    
        for(i = 0;i < n;i++)
        {
        fprintf(fp,"%s ", dan[i]);
        }
    
            if(fclose(fp)) 
            {
                printf("Can not close the file!
    ");
                exit(0);
             } 
     
         return 0;
    }
    

    2.实验截图

    有难度,查找了一些博客。
    我学号最后一位为4,对应字符为','。

    3.预习作业

    1.预习的主要内容

    指针,对于指针有些陌生,所以预习题个别题目是猜测的。

    2.完成情况截图



    3.预习中存在的疑惑

    2-2
    int *p 的含义是
    

    这个题目在网上搜索了也没有找到答案

    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较困惑地问题
    3/3-3/9 6h 37 文件的处理以及对于数据的处理 指针
    3/10-3/15 6h 63 文件的处理以及对于数据的处理 指针
    3/18-3/19 3h 156 选择排序法 不能熟练运用选择排序法
    3/23-3/29 6h 150 二维数组 不能完全独立熟练写出代码
  • 相关阅读:
    HDU1720 A+B Coming
    HDU1390 ZOJ1383 Binary Numbers
    HDU1390 ZOJ1383 Binary Numbers
    HDU2504 又见GCD
    HDU2504 又见GCD
    HDU1335 POJ1546 UVA389 UVALive5306 ZOJ1334 Basically Speaking
    HDU1335 POJ1546 UVA389 UVALive5306 ZOJ1334 Basically Speaking
    HDU1020 ZOJ2478 Encoding
    HDU1020 ZOJ2478 Encoding
    HDU2097 Sky数
  • 原文地址:https://www.cnblogs.com/wjx0229/p/10622211.html
Copyright © 2011-2022 走看看