zoukankan      html  css  js  c++  java
  • C语言I博客作业02

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/CST2020-1
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11452
    这个作业的目标 <提前学习,找出问题,提高自身能力>
    学号 <20208949>
    • 1.PTA实验作业(15分/题)
      1.1:L1-002 打印沙漏 (20分)
      1.1.1实验代码截图

      1.1.2数据处理
      数据表达:定义了变量num,row,j,n,c和字符型变量char
      数据处理:N<=1000,for循环分别判断得出结果
      1.1.3 PTA提交列表及说明
    • Q1:出现编译错误,报错点很多
    • A1:忘记输入分号,忘记输入地址符
      问题在于自己对编程不熟悉
      1.2:L1-036 A乘以B (5分)
      1.2.1实验代码截图

      1.2.2数据处理
      数据表达:定义了A和B
      数据处理:表达式:A*B,直接算出结果
      1.2.3 PTA提交列表及说明

      说明:
      Q1:结果显示0,很懵逼
      A1:发现scanf里面一个地址符打成了百分号
      1.3:L1-005 考试座位号(15分)
      1.3.1 实验代码截图:

      1.3.2 数据处理
      数据表达:定义了变量number,test_number,seating_number
      数据处理:流程结构:for,while分别循环判断
      1.3.3 PTA提交列表及说明

      说明:
      Q1:开始的时候问题很多,出现编译问题
      A1:分号忘记输入,地址符又输成百分符
    • 2.阅读代码(-5——5分)
    #include<iostream>
    #include<string.h>
    using namespace std;
    int ko[1000];
    int cun[1000][350];
    int ans[1000];
    int main()
    {
    	int length,i,j,sum;
    	cin>>length;
    	sum=0;
    	for(i=0;i<length;i++)
    	{
    		cin>>ko[i];
    		sum=sum+ko[i];
    	}
    	for(i=0;i<length;i++)
    	{
    		sum=sum-ko[i];
    		if(sum%2==1)
    			ko[i]=1-ko[i];
    	}
    	memset(cun,0,sizeof(cun));
    	cun[0][0]=1;
    	for(i=1;i<length;i++)
    	{
    		for(j=0;j<=349;j++)
    		{
    			cun[i][j]=cun[i-1][j]*2;
    		}
    		for(j=0;j<=349;j++)
    		{
    			if(cun[i][j]>10)
    			{
    				cun[i][j+1]=cun[i][j+1]+cun[i][j]/10;
    				cun[i][j]=cun[i][j]%10;
    			}
    		}
    	}
    	memset(ans,0,sizeof(ans));
    	for(i=0;i<length;i++)
    	{
    		if(ko[i]==0)
    			continue;
    		int carry=0;
    		for(j=0;j<=349;j++)
    		{
    			ans[j]=ans[j]+cun[i][j]+carry;
    			carry=ans[j]/10;
    			ans[j]=ans[j]%10;
    		}
    	}
    	int flag=-1;
    	for(i=400;i>=0;i--)
    		if(ans[i]!=0)
    		{
    			flag=i;
    			break;
    		}
    	if(flag==-1)
    		cout<<0;
    	for(i=flag;i>=0;i--)
    		cout<<ans[i];
    	cout<<endl;
    	return 0;
    }
    

    这是来自牛客网的题目,主要是计算从条形图上起飞 bytish 链的所有环所需的最小移动数,这份代码优点在于整体简洁明了,可以清楚看出基本步骤和运行思路,可学习之处运用了if-for,也插入许多变量,大括号括住了变量。

    • 3.学习总结(15分)
      3.1 学习进度条

      周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
      第十周: 14小时 267 循环和数组 怎样灵活运用循环和其他用法

      3.2 累积代码行和博客字数

      时间 博客字数 代码行数
      第八周 870 5
      第九周 370 42
      第十周 730 71

    3.3 学习感悟
    从第一节课学习最简单的编程到现在进行自我学习与提升,大学最重要的不是老师的方方面面的帮助,而是应该自己去学习,学会去从书中或者百度找到问题答案,实在不能解决最后才是问老师。
    不能一味钻进死胡同,在长时间不能解决的情况下,应该学会先放下,旧题新思,保持进步。

  • 相关阅读:
    var、let、const的区别
    StringBuilder/StringBuffer源码阅读笔记
    Java String类源码阅读笔记
    超过三十岁就不适合写代码了?看看国外程序员怎么说
    Kubernetes笔记(五):了解Pod(容器组)
    Java安全之Javassist动态编程
    Java安全之Commons Collections1分析(三)
    Java安全之Commons Collections1分析(二)
    Java安全之Commons Collections1分析(一)
    Java安全之URLDNS链
  • 原文地址:https://www.cnblogs.com/guo02/p/13934480.html
Copyright © 2011-2022 走看看