这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 要求我们掌握指针,可以更好的运用它
我在这个课程的目标是  学懂C语言,会编程一些简单的小应用
这个作业在那个具体方面帮助我实现目标  这个作业让我更了解怎样运用指针
参考文献
博客园

基础作业一

函数题:每个单词的最后一个字母改成大写

函数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("\nAfter changing: %s\n", chrstr); return 0; } /* 请在这里填写答案 */

输入样例:

my friend is happy

输出样例:

After changing:   mY frienD iS happY

1)我的代码
void fun(char *p)
{int i;for(i=0;p[i]!='\0';i++){if(p[i]!=' '&&p[i+1]==' ') //如果第p[i]个字符不是空格,p[i+1]个是空格,可判断p[i]是单词中最后一个字母            p[i]=p[i]-32;}
}

2)流程图3)本题调试过程中遇到的问题及解决办法 本题不难,没问题

基础作业二

程序题:自动售货机

如图所示的简易自动售货机,物品架1、2上共有10样商品,按顺序进行编号分别为1-10,标有价格与名称,一个编号对应一个可操作按钮,供选择商品使用。如果物架上的商品被用户买走,储物柜中会自动取出商品送到物架上,保证物品架上一定会有商品。用户可以一次投入较多钱币,并可以选择多样商品,售货机可以一次性将商品输出并找零钱。

用户购买商品的操作方法是:

(1)从“钱币入口”放入钱币,依次放入多个硬币或纸币。钱币可支持1元(纸币、硬币)、2元(纸币)、5元(纸币)、10元(纸币),放入钱币时,控制器会先对钱币进行检验识别出币值,并统计币值总额,显示在控制器显示屏中,提示用户确认钱币放入完毕;

(2)用户确认钱币放入完毕,便可选择商品,只要用手指按对应商品外面的编号按钮即可。每选中一样商品,售货机控制器会判断钱币是否足够购买,如果钱币足够,自动根据编号将物品进行计数和计算所需钱币值,并提示余额。如果钱币不足,控制器则提示“Insufficient money”。用户可以取消购买,将会把所有放入钱币退回给用户。

输入格式:

先输入钱币值序列,以-1作为结束,再依次输入多个购买商品编号,以-1结束。

输出格式:

输出钱币总额与找回零钱,以及所购买商品名称及数量。

输入样例

1 1 2 2 5 5 10 10 -1 1 2 3 5 1 6 9 10 -1

输出样例:

Total:36yuan,change:19yuan Table-water:2;Table-water:1;Table-water:1;Milk:1;Beer:1;Oolong-Tea:1;Green-Tea:1;

1)代码 
include<stdio.h>
int main()
{int sum,pay,change,yuan,i;int b[80];static int goods[10];sum=pay=change=0;scanf("%d",&yuan);while(yuan!=-1)//输入钱币值序列,以-1作为结束   {        sum+=yuan;scanf("%d",&yuan),for(i=0;b[i-1]!=-1;i++)//输入多个购买商品编号,以-1结束
   {scanf("%d",&b[i]);}char name[10][20]={"Table-water","Table-water","Table-water","Coca-Cola","Milk","Beer","Orange-Juice","Sprite","Oolong-Tea","Green-Tea"};//利用二维数组储存商品名称for(i=0;b[i]!=-1;i++)//输入多个购买商品编号,以-1结束
   {switch(b[i])//利用switch语句选择要购买的商品
       {case 1: goods[0]++;pay+=1;break;case 2: goods[1]++;pay+=1;break;case 3: goods[2]++;pay+=1;break;case 4: goods[3]++;pay+=2;break;case 5: goods[4]++;pay+=2;break;case 6: goods[5]++;pay+=3;break;case 7: goods[6]++;pay+=3;break;case 8: goods[7]++;pay+=3;break;case 9: goods[8]++;pay+=4;break;case 10: goods[9]++;pay+=4;break;//goods++计算该商品购买的件数,pay+=累计所花的钱
        }}
    if        printf("Insufficient money");//钱不足    else(sum>pay){printf("Total:%dyuan,change:%dyuan\n",sum,sum-pay);for(i=0;i<10;i++)        {if(goods[i]!=0)printf("%s:%d;",name[i],goods[i]);//输出结果
        } }
    return 0;
}

2)流程图3)本题调试过程中遇到的问题及解决办法 问题:不知怎么输出多个商品名称 解决办法:利用之前学的二维数组,把商品变量储存起来,再输出4)运行结果截图

预习题

函数题: 使用函数删除字符串中的字符

输入一个正整数 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'都被删除)

1)代码
#include<stdio.h>
void delchar (char *p,char ch);//声明函数
int main (void)
{int i,repeat;char str[1000];char a,ch;scanf("%d",&repeat);  for(i=1;i<=repeat;i++){scanf("%c",&a);//当然你输入字符时会点回车键,而回车键也是字符gets(str);//输入字符串scanf("%c",&ch);//输入要删除的字符printf("result: ");delchar(str,ch);//调用函数
  }return 0;
}
void delchar (char *p,char ch)
{for(;*p!='\0';p++){if(*p!=ch)//如果该字符与要删除的字符不同,输出该字符printf("%c",*p);}printf("\n");
}

2)流程图3)本题调试过程中遇到的问题及解决办法问题一:循环次数不对  解决办法:忽略了输入运行所需的字符屏幕上我们按的回车键也是字符,所以我们应该在循环语句中多写一个输入字符代码4)运行结果截图

  第二周 第三周 第四周 第五周 第六周  第七周

字数

548 661 1145 1242 177 1541
代码行数 37 55 100 54 50 88


学习进度条 
日期 花的时间 行数页码 学到的知识 日期的疑惑
3/1-3/7 4个小时 148-155

数组的定义与运用

3/9-3/15 4个小时 298-303

文件定义和文件数据的处理

3/18-3/22 4个小时 155-165

一维数组的排序方法

二维数组的运用

3/23-3/28 四个小时  166-172  字符串的储存方法,和字符串的运用  将字符串改成十进制输出
3/29-4/5 四个小时  180-186  掌握了指针的定义,基本运算等  指针的初始化还不太懂
 4/6-4/12 四个小时 186-190 加强对指针的掌握,利用指针进行编程 指针指向数组的运用还是不太懂


学习总结 
 这周的题目不多不少,但是很难,尤其是基础题的第二题,编程起来很复杂,代码很长;本周没有学习太多新知识,本周最难的内容是在运用指针的基础上,加上了数组的运用;这个内容我在写这周作业之前还是懵懂的,写完作业后,我对这个内容了解更深入了;因为我为了完成作业,我翻了各种资料,巩固和弥补了我这周所学习的知识

转载于:https://www.cnblogs.com/hunan-hengyang/p/10699103.html

2019春第七周作业相关推荐

  1. 2019春第六周作业

    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 2019春第六周作业 我在这个课程的目标是 掌握指针变量的基本运算:理解指针作为函数参数的作用:掌握如何使用指针实现函数调用返回多个值. ...

  2. 2019春第十周作业

    第十周作业 本周作业头 这个作业属于哪个教程 C语言程序设计Ⅱ 这个作业要求在哪里 (https://edu.cnblogs.com/campus/zswxy/software-engineering ...

  3. 2019春第八周作业

    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 第八周作业要求 我在这个课程的目标是 掌握常用字符串函数以及使用指针操作字符串的方法,掌握动态内存分配. 这个作业在哪个具体方面帮助我实现 ...

  4. 2019春第六周作业Compile Summarize

    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 在这里 我在这个课程的目标是 能够熟练掌握指针的用法 这个作业在那个具体方面帮助我实现目标 对指针的使用更加得心应手 参考文献与网址 C语 ...

  5. 2019春第五周作业

    这个作业属于哪个课程 C语言程序设计 这个作业的要求在哪里 (https://edu.cnblogs.com/campus/zswxy/software-engineering-class2-2018 ...

  6. 2019年春季学期第七周作业

    A Q 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 2019春第七周作业 我在这个课程的目标是 尽可能了解并且应用指针及文件和数组的知识 这个作业在那个具体方面帮助我实现目标 大致掌 ...

  7. 学号20189220余超 2018-2019-2 《密码与安全新技术专题》第七周作业

    学号20189220 余超 2018-2019-2 <密码与安全新技术专题>第七周作业--论文学习及报告总结 课程:<密码与安全新技术专题> 班级: 1892 姓名: 余超 学 ...

  8. 2017-2018-2 20179215《密码与安全新技术》第七周作业

    2017-2018-2 20179215 <密码与安全新技术> 第七周作业 课程:<密码与安全新技术> 班级: 201792 姓名: 袁琳 学号:20179215 上课教师:谢 ...

  9. 厚基础Linux——第七周作业

    文章目录 厚基础Linux--第七周作业 1.自建yum仓库,分别为网络源和本地源 环境规划 技术要求 需求分析 server端 client端 操作步骤 系统安装 server操作步骤 clinet ...

最新文章

  1. 一个复杂系统的拆分改造实践!
  2. Git如何回滚代码?
  3. IBM RSA(Rational Software Architect)试用版下载地址
  4. linux虚拟网络设备--内核网桥的实现分析(六)
  5. 每日阅读(产品) 汤道QQ与微信
  6. java synchronized静态_Java中Synchronized的用法(简单介绍)
  7. HashMap测试程序2
  8. 工业以太网交换机的冗余功能及发展历程介绍
  9. python类内置装饰器(一分钟读懂)
  10. vue+axios中的get请求传参,post请求头(form/json)不一样的传参的处理
  11. Python编程手册系列 - 日历、日期、时间相关内建模块详解
  12. CSDN-markdown
  13. 技术方案:网吧无盘存储解决方案(转)
  14. 2021 Alexa SmartHome Skill 对接(二)配置及服务对接
  15. 普通话测试-短文60篇文章,附带拼音(11-20篇)
  16. 资源管理器 右键 反应慢 现象解决方案
  17. 控制反转思想的理解实例
  18. agv系统介绍_AGV物流系统工作流程及模块介绍
  19. 人人都想自学python_人人都想自学编程,为什么坚持下来的没几个?
  20. 就算“千夫所指”也要为自己做的10件事

热门文章

  1. 计算机普通话水平测试有用吗,计算机辅助普通话水平测试的优点与问题
  2. u盘打不开提示格式化怎么办?u盘恢复这样做
  3. OAuth client 微信、qq、新浪登录
  4. 少年: Nginx了解下
  5. 开学网络舆情信息搜集方法与技术工具详解
  6. 最全介绍的代理模式---第一节-静态代理
  7. 激光测距仪的发展与介绍——TFN 10K KI 双目远距离激光测距仪
  8. 八位“Booth二位乘算法”乘法器
  9. 计算机控制课设直流电机控制,计算机控制系统课程设计 直流电机测速调速系统 (精选可编辑)...
  10. 食用油有多少种,它们的区别是什么?