zoukankan      html  css  js  c++  java
  • 第七周作业

    本周作业头

    这个作业属于哪个课程c语言程序设计
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/software-engineering-class2-2018/homework/2888
    我在这个课程的目标是 指针
    这个作业在哪个具体方面帮助我实现目标 加强了对指针的了解
    参考文献 http://c.harson.co/

    基础作业
    6-2 每个单词的最后一个字母改成大写 (10 分)
    函数fun的功能是:将p所指字符串中每个单词的最后一个字母改成大写。(这里的“单词”是指由空格隔开的字符串)。

    函数接口定义:
    void fun( char *p );
    其中 p 是用户传入的参数。函数将 p所指字符串中每个单词的最后一个字母改成大写。

    裁判测试程序样例:

    
    #include <stdio.h>
    void fun( char *p );
    int main()
    {
    char chrstr[64];  int d ;
    gets(chrstr);
    d=strlen(chrstr) ;
    chrstr[d] = ' ' ;
    chrstr[d+1] = 0 ;
    fun(chrstr);
    printf("
    After changing:   %s
    ", chrstr);
    return 0;
    }
    
    

    /* 请在这里填写答案 */
    输入样例:

    my friend is happy

    输出样例:

    After changing:   mY frienD iS happY

    实验代码:

    void fun( char *p ){
        int i;
        for(i=0;*(p+i)!='';i++)
                if(*(p+i+1)==' ')
                *(p+i)=*(p+i)-'a'+'A';
        
    }
    思路:

    截图:

    7-1 使用函数删除字符串中的字符 (10 分)
     

    输入一个正整数 repeat (0<repeat<10),做 repeat 次下列运算:

    输入一个字符串 str,再输入一个字符 c,将字符串 str 中出现的所有字符 c 删除。

    要求定义并调用函数delchar(str,c), 它的功能是将字符串 str 中出现的所有 c 字符删除,函数形参str的类型是字符指针,形参c的类型是char,函数类型是void。

    输入输出示例:括号内为说明,无需输入输出

    输入样例:

    3               (repeat=3)
    happy new year  (字符串"happy new year")
    a               (待删除的字符'a')
    bee             (字符串"bee")
    e               (待删除的字符'e')
    111211          (字符串"111211")
    1               (待删除的字符'1')
    

    输出样例:

    result: hppy new yer    (字符串"happy new year"中的字符'a'都被删除)
    result: b               (字符串"bee"中的字符'e'都被删除)
    result: 2               (字符串"111211"中的字符'1'都被删除)
    实验代码:
    #include<stdio.h>
    void delchar(char *str, char c)
    {
        int i,n=0;
        for(i=0;*(str+i)!='';i++)
        {
            if(str[i]!=c)
            {
                str[n]=str[i];
               n++;
            }
        }
        str[n]='';
        }
    int main(void)
    {
        int repeat;
        char a, b[100];
        scanf("%d ",&repeat);
        for(int i=0;i<repeat;i++)
        {
            gets(b);
           a=getchar();
           delchar(b,a);
          printf("result: %s ",b);
        }
        return 0;
    }
    截图:

     问题:开始想的太简单,一开始就错了,后来也没思路不知道要怎么删除;

    解决办法:问了其他的同学,叫他帮我一起做的。

    截图:

    
    
  • 相关阅读:
    LeetCode算法题-Reverse String II(Java实现)
    LeetCode算法题-Convert BST to Greater Tree(Java实现)
    LeetCode算法题-K-diff Pairs in an Array(Java实现)
    LeetCode算法题-Minimum Absolute Difference in BST(Java实现)
    基于Bootstrap和Knockout.js的ASP.NET MVC开发实战 关于 拦截器的 学习 部分
    基于bootstrap和knockoutjs使用 mvc 查询
    Kindle Unlimited 上线的最热书单
    基于Bootstrap和Knockout.js的ASP.NET MVC开发实战
    程序员的数学
    数学女孩
  • 原文地址:https://www.cnblogs.com/shigedidi/p/10697675.html
Copyright © 2011-2022 走看看