• 2019春第五周作业


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

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

    输入格式:

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

    输出格式:

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

    输入样例:

    blue
    red
    yellow
    green
    purple
    #

    输出样例:

    red blue green yellow purple 

    实验代码:

    #include<stdio.h>
    
    #include<string.h>
    
    int main(void)
    
    {
    
        char input[21][11] = { '' };
    
        char snap[11] = { '' };
    
        int i = 0;
    
        while (1) {
    
            scanf("%s", input[i]);
    
            if (input[i][0] == '#')
    
                break;
    
            i++;
    
        }
    
        input[i][0] = '';
    
        int len = i;
    
        int j = 0;
    
        for (i = 0; i < len; i++)
    
        {
    
            for (j = 1; j < len - i; j++)
    
            {
    
                if (strlen(input[j - 1]) > strlen(input[j]))
    
                {
    
                    strcpy(snap, input[j - 1]);
    
                    strcpy(input[j - 1], input[j]);
    
                    strcpy(input[j], snap);
    
                }
    
             }
    
        }
    
        for (i = 0; i < len; i++)
    
            printf("%s ", input[i]);
    
     
    
        return 0;
    
    }

    设计思路:

    本题遇到问题及解决过程:

    因为对这种语句不怎么熟悉,所以不知道怎么将输出结果输出在一行查找后反省发现需在print的输出括号里加end()。

    运行结果截图:

     指针选择题:

    2-1

    下列语句定义 x 为指向 int 类型变量 a 的指针,正确的是()。 (2分)

     
    2-2

    int *p 的含义是 (2分)

     
    2-3

    如果有定义:int m, n = 5, *p = &m; 与m = n 等价的语句是 () 。 (1分)

     
    2-4

    变量的指针,其含义是指该变量的( )。 (1分)

     
    2-5

    有如下程序段

    int *p,a=10,b=1;
    p=&a; a=*p + b;
    

    执行该程序段后,a的值是 (2分)

     
    2-6

    对于下列程序,正确的是() 。 (2分)

    void f(int *p)
    {
          *p = 5;
    }
    int main(void)
    {
          int a, *p;
    
          a = 10;
          p = &a;
          f(p);
          printf(“%d”, (*p)++);
    
          return 0;
    }
    
     
    2-7

    执行如下程序段,打印输出的内容是: (2分)

    #include <stdio.h>
    void fun (int c, int *d) {
        c++;
        (*d)++;
    }
    int main ( ){
        int a=5, b=9;
        fun(a, &b);
        printf("%d, %d", a, b);
        return 0;
    }
    

     

     学习感悟:

     感觉学习c语言是一门很抽象的学科,随着学习内容的增加,整体的难度也在不断增加,

    而我现在要做的就是在把每一个知识点弄懂的情况下不断的练习和巩固,任重而道远。

     

    
    
  • 相关阅读:
    使用Power Query从Web页面获取图像到Power BI报告中
    视频 |【2019】Power BI 8月产品功能更新讲解
    【2019】微软Power BI 每月功能更新系列——Power BI 8月版本功能完整解读
    视频 |【2019】Power BI 7月产品功能更新讲解
    2019 年 BI 平台 Top 14
    2016 黑客必备的Android应用都有哪些?
    J2EE完全手册(二)
    JavaBean ,Enterprise Bean(EJB), 三种Bean, 以及POJO
    J2EE完全手册(一)
    J2EE简介
  • 原文地址:https://www.cnblogs.com/wangzihaojun/p/10620723.html
Copyright © 2020-2023  润新知