一、PTA实验作业

题目1:7-2 统计一行文本的单词个数

1. 本题PTA提交列表

2. 设计思路

  • 1.定义整形变量i=0,count=0,flag.
  • 2.定义数组str[999]
  • 3.输入str[i]=getchar())!='\n,i++数组
  • 4.进入for(i=0;str[i]!='\0';i++)的循环.
  • 5.判断输入的数组是否符合条件,若符合flag=1.
  • 6.判断输入的数组是否符合条件并且str[i+1]=='\0',符合count++.
  • 7.判断输入的数组是否str[i]','||str[i]'.'||str[i]'!'||str[i]'?,符合则flag=0.
  • 8.判断输入的数组是否(str[i]','||str[i]'.'||str[i]'!'||str[i]'?')&&(str[i-1]>='a'&&str[i-1]<='z'||str[i-1]>='A'&&str[i]<='Z'||str[i-1]>='0'&&str[i-1]<='9').符合则count++.
  • 9.判断输入的数组是否flag1&&str[i]' '&&str[i-1]!=' '.是,count++.
  • 10.输出count的值.

3.代码截图

4.本题调试过程碰到问题及PTA提交列表情况说明。

  • 没有考虑文本结尾标点符号前可能有空格,而导致部分正确.

题目2:7-5 统计大写辅音字母

1. 本题PTA提交列表

2. 设计思路

3.代码截图

4.本题调试过程碰到问题及PTA提交列表情况说明。

  • 没有问题.

题目3:7-7 删除字符串中的子串

1. 本题PTA提交列表

2. 设计思路

  • 1.定义整形变量 N,i,j,flag=0,m,count=0,b=0,l;
  • 2.定义数组str[10000],hexad[10000],x[10000].
  • 3.进入for(j=1;j<=2;j++)的循环,输入str[i]=getchar())!='\n'的两串数组字符.
  • 4.如果输入的字符串为第一句,flag++.
  • 5.如果输入的字符串为第二句,count++.
  • 6.如果j=1,进入for(i=0;str[i]!='\0';i++)的循环,用新的数组hexad[i]来表示第一串字符串.
  • 7.如果j=2,进入for(j=1;j<=flag;j++)的去嵌套循环
  • 8.再进入for(i=0;hexad[i]!='\0';i++)的循环
  • 9.进入for(m=0;m<count;m++)的循环
  • 10.如果(hexad[i]!=str[m],break;
  • 11.如果m<count-1,i++.
  • 12.如果m!=count,x[b]=hexad[l];.
  • 13.进入for(b=0;x[b]!=0;b++)的循环,用数组hexad[b]来表示x[b];
  • 14.最后 putchar(x[b]).

3.代码截图

4.本题调试过程碰到问题及PTA提交列表情况说明。

  • 只删除一个字符串,没有考虑到有重复的情况.

二、截图本周题目集的PTA最后排名。

三、同学代码结对互评

1.互评同学名称

  • 吴军霖.

2.我的代码、互评同学代码截图

3.我和同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?如果同学代码有错的也请帮忙指出来哪里出问题。

  • 1.我和军霖同学的解题方法一点类似,都是通过规律来做,但是军霖方法是找出行列跟数组下表的关系,而我的方法是用规律每一行的每个字母都是相差4个单位.
  • 2.我更喜欢军霖代码,只用了19行,而且方法创新.

四、本周学习总结

1.你学会了什么?

1.1指针变量如何定义(设计代码可以用markdown代码符号渲染)?

  • 类型 *p

1.2 指针加法运算运用在哪种情况,2个指针变量能否相加?

  • 比如(*p)++,将指针所指的变量自增;俩个同类型的指针变量可以相减,但是不是相加

1.3 指针不赋初值,直接使用,会出现什么情况,请用DEVC验证,并截图展示?

1.4 课堂派上关于分离浮点数的整数部分和小数部分那题,请用DEVC验证实现,并在此贴图展示,同时说明哪句是指针变量做函数形参,函数实参应该怎么表示。指针变量做函数形参有什么用处?

``#include<stdio.h>

void big(float x,int *intpart,float *floatpart);

int main(void)

{

int intpart;

float number,floatpart;

scanf("%f",&number);

big(number,&intpart,&floatpart);

printf("%d %f",intpart,floatpart);

return 0;

}

void brek(float x,int *intpart,float *floatpart)

{

*intpart=x;

floatpart=x-intpart;

}`

![](http://images2017.cnblogs.com/blog/1232392/201712/1232392-20171210212946646-1813415606.png)

###1.5 请把课本的冒泡排序的函数改成指针变量做形参格式,并把代码写在底下,注意用markdown语法渲染。

include<stdio.h>

void brek(float x,int *intpart,float *floatpart);

int main(void)

{

int intpart;

float number,floatpart;

scanf("%f",&number);

brek(number,&intpart,&floatpart);

printf("%d %f",intpart,floatpart);

return 0;

}

void brek(float x,int *intpart,float *floatpart)

{

*intpart=x;

floatpart=x-intpart;

}

####1.6 如何定义一个指针变量指向数组,如何用指针变量表示数组元素?

int a[100],*p;

p=a;

###1.7 如何定义字符指针指向字符串?指针指向字符串后,初始位置在哪里?

char *p;

char a[10];

p=a;

###1.8 利用字符指针操作字符串,如设计函数实现字符串连接,请在此贴图展示代码。说明指针表示字符的方法好处是什么?
![](http://images2017.cnblogs.com/blog/1232392/201712/1232392-20171210213713115-1772652593.png) - 比较好解题
##2.本周你不会内容有什么?
- 不会指针的熟练运用
- 不会冒泡法.
###2.1 课堂派错题罗列及如何订正。
- ![](http://images2017.cnblogs.com/blog/1232392/201712/1232392-20171210214131318-1458229416.png)
- 通过devc编译
![](http://images2017.cnblogs.com/blog/1232392/201712/1232392-20171210214319568-1054655711.png)
- &是个地址,*p是个值,两者不能合在一起.
![](http://images2017.cnblogs.com/blog/1232392/201712/1232392-20171210214540115-2102686674.png)
- 把p当作值来做导致选了A,而p所指向的是个地址,故选D.
![](http://images2017.cnblogs.com/blog/1232392/201712/1232392-20171210215009068-1954178322.png)
- num p+10 max<*q ###2.2 其他不会的?打算怎么解决
##3.数组上机考试小结
###3.1 那题错了,请罗列?
![](http://images2017.cnblogs.com/blog/1232392/201712/1232392-20171210215213271-1376626040.png) ![](http://images2017.cnblogs.com/blog/1232392/201712/1232392-20171210215339130-1847846470.png) ![](http://images2017.cnblogs.com/blog/1232392/201712/1232392-20171210215412755-1675640504.png) ###3.2 错题如何订正,为什么错了?
![](http://images2017.cnblogs.com/blog/1232392/201712/1232392-20171210215529224-114029880.png) - 题目中定义的数组是整形数组,故不能b[i]!='\0'来结束循环,得用n<来判断.

c语言字符类型作业的更多相关文章

  1. C语言-字符类型

    C语言-字符类型 char不仅是一种整数,也是一种特殊的类型:字符(character). 常用单引号表示字符的字面量,如'a', '1'. 单引号''也是一个字符,printf和scanf里用的%c ...

  2. C语言字符数组作业

    一.PTA实验作业 题目1:7-1 字符串转换成十进制整数 1. 本题PTA提交列表 2. 设计思路 3.代码截图 4.本题调试过程碰到问题及PTA提交列表情况说明. 1.一开始我没想到怎么判断正负的 ...

  3. 网络1712--c语言字符数组作业总结..

    ---恢复内容开始--- 作业亮点 1.总体情况 1.大部分同学利用了流程图后,对于思路的理解有了提升. 2.很多同学在总结方面写的很不错,能够罗列问题贴出解决问题,我们能够看到你们的进步 2.作业发 ...

  4. 2016年11月3日JS脚本简介数据类型: 1.整型:int 2.小数类型: float(单精度) double(双精度) decimal () 3.字符类型: chr 4.字符串类型:sting 5.日期时间:datetime 6.布尔型数据:bool 7.对象类型:object 8.二进制:binary 语言类型: 1.强类型语言:c++ c c# java 2.弱类型语

    数据类型: 1.整型:int 2.小数类型: float(单精度) double(双精度) decimal () 3.字符类型: chr 4.字符串类型:sting 5.日期时间:datetime 6 ...

  5. 转 Go语言基本类型 —— 字符类型

    https://blog.csdn.net/FHD994603831/article/details/92435724 字符类型Golang中没有专门的字符类型,如果要存储单个字符(字母),一般使用b ...

  6. C语言Ⅰ博客作业06

    这个作业属于哪个课程 C语言程序设计Ⅰ 这个作业要求在哪里 熟练掌握多分支结构,字符型数据类型和逻辑运算符 我在这个课程的目标是 https://www.cnblogs.com/tongyingjun ...

  7. C语言Ⅰ博客作业10

    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/10097 我在这个课程的 ...

  8. C语言Ⅰ博客作业08

    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/9978 我在这个课程的目 ...

  9. C语言Ⅰ博客作业07

    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/9933 我在这个课程的目 ...

随机推荐

  1. Excel 转 vCard格式、CSV格式

    Excel 转vCard格式(常用于Gmail, Yahoo, 163等).CSV格式(常用于Outlook, Foxmail等) 最近公司邮件通讯录需要更新,我就将原来的通讯录给删除了,准备重新导入 ...

  2. iOS - UIImageView 动画

    1.UIImageView 动画 1.1 播放图片集 播放图片集 @property (nonatomic, strong) UIImageView *playImageView; self.play ...

  3. 【BZOJ3196】二逼平衡树(树状数组,线段树)

    [BZOJ3196]二逼平衡树(树状数组,线段树) 题面 BZOJ题面 题解 如果不存在区间修改操作: 搞一个权值线段树 区间第K大--->直接在线段树上二分 某个数第几大--->查询一下 ...

  4. [LOJ2230][BJOI2014]大融合

    题面戳我 sol LCT维护子树size. 开一个数组\(sz_i\)表示一个节点的所有虚儿子的size和,\(sum_i\)表示以一个节点为根的子树的\(size\)和,可见\(sz_u=\sum_ ...

  5. 8Manage:物流CRM,深度挖掘快递企业下一站蓝海!

    [导读]网购的普及加快了快递物流服务在中国的发展,而物流行业也开始展露出自身巨大的发展潜力和进步空间.其中,作为物流行业根本核心的物流客户关系管理开始引起了管理者的注意,如何升级用户物流服务体验,把握 ...

  6. windows7下django项目搭建

    参考视频教程 http://study.163.com/course/    http://www.bilibili.com/video/av8915600/   http://www.bilibil ...

  7. vue零基础学习--搭建项目

    一.script引入(联系使用,小型项目) 直接下载并用 <script> 标签引入,Vue 会被注册为一个全局变量. <script src="https://cdn.j ...

  8. CentOS 7主机名的弯弯绕绕

    在CentOS 6中,修改主机名方式很简单,临时修改主机名使用hostname命令,永久修改主机名直接写进文件/etc/sysconfig/network中即可. 但在CentOS 7中,主机名就没那 ...

  9. SpringDataJPA入门就这么简单

    一.SpringData入门 在上次学SpringBoot的时候,那时候的教程就已经涉及到了一点SpringData JPA的知识了.当时还是第一次见,觉得也没什么大不了,就是封装了Hibernate ...

  10. jQuery 3.0最终版发布,十大新特性眼前一亮

    jQuery 3.0在日前发布了最终的全新版本.从2014年10月,jQuery团队对这个主要大版本进行维护开始,web开发者社区便一直在期待着这一刻的到来,终于在2016年6月他们迎来了这一个最终板 ...