zoukankan      html  css  js  c++  java
  • 孙晓宇 20190905-3 命令行和控制台编程

    此作业的要求参见[https://edu.cnblogs.com/campus/nenu/2019fall/homework/5523]

    1.熟悉 命令行和控制台

    假设在当前目录下存在应用程序 a.exe 和 文本文件 b.txt,请以数据流图并辅助以文字说明下述控制台命令的作用是什么。

     a.exe < b.txt > c.txt

    答:将b.txt在a.exe中执行,经过执行后,结果保存在c.txt中,如下图所示。

     请用C言开发应用程序d.exe,从控制台指令读入命令行参数,并在控制台分别打印出a、b、c的值。运行效果形如下面的示例

    d.exe a=1 b=2 c=3

    1

    2

    3

    d.exe a=11 b=22 c=33

    11

    22

    33

    答:

    代码如下:

    #include "stdio.h"
    void main() {
        int a,b,c;
            scanf("a=%d b=%d c=%d",&a,&b,&c);
            printf("%d
    %d
    %d
    ",a,b,c);
    }

    执行效果图如下:

     2.熟悉 测试用例

    (1)请在网站 [https://pintia.cn/]注册账号。

    (2)在题目集 PAT (Basic Level) Practice (中文) 中任选3道题目完成。截图如下,要求包括1.红色对号、2.标号、3.用户名(此例中为 Young)。

    (3)代码解读。

    答:

    (2)

     

    (3)代码解读:

    1001题——害死人不偿命的(3n+1)猜想

    重难点:此题重点要读清楚题意,理解清楚题,刚开始做的时候由于审题不清,以为先将奇偶数区分开来然后按照相应的公式循环,并没有放在同一个大循环中来执行,导致奇数执行不出结果,偶数结果错误。之后放在同一个循环中,判断奇数还是偶数,奇数进行(3n+1)/2的计算,偶数进行n/2的计算,程序运行正确。

    重要代码:

        scanf("%d",&n);
        while(n!=1){
            if(n%2==0){
                n=n/2;
            }
            else{
                n=(3*n+1)/2;
            }
            i++;
        }

     1006题——换个格式输出整数

    重难点:(1)取出百位数、十位数、个位数;(2)将个位数按1234...n的格式输出。

    重要代码:

        scanf("%d",&n);
        a=n/100;
        b=n%100/10;
        c=n%10;
        while(a--){
            printf("B");
        }
        while(b--){
            printf("S");
        }
        while(c--){
            printf("%d",i);
            i++;
        }

     1056题——组合数的和

    重难点:如果将N个数的和,一个个排列组合,那么这个程序将会有很多的循环,也会特别的麻烦。但是如果想清楚,这N个数,每一个数都会在个位出现(N-1)次,也会在十位出现(N-1)次,就会变得很简单。

    for(int i = 0; i < N; i++)
        {
            scanf("%d", &a);
            sum=sum+a*(N-1)*11;
        }

     (4)PSP

    原因分析:(1)语法不熟练,做题的时候会查看着语法规则和函数用法做题;(2)很简单的题可是做起来却没那么简单,并且会出很多的错误,调试很多次才能运行好;(3)做题的时候出现了没有认真读题的情况,导致程序运行出错,检查好几遍才发现错误。

  • 相关阅读:
    poj3669 广搜
    检索所有课程都选修的的学生的学号与姓名
    UVA10160 Servicing Stations
    uva11205 The broken pedometer 子集生成
    poj1101 the game 广搜
    poj3009 Curling 2.0 深搜
    poj 1564 Sum It Up 搜索
    HDU 2268 How To Use The Car (数学题)
    codeforces 467C George and Job(简单dp,看了题解抄一遍)
    HDU 2267 How Many People Can Survive(广搜,简单)
  • 原文地址:https://www.cnblogs.com/sunxiaoyu/p/11493897.html
Copyright © 2011-2022 走看看