C语言--字符数组

一、PTA实验作业

题目1:7-1 字符串转换成十进制整数

1. 本题PTA提交列表

2. 设计思路

主要思路流程:

筛选出十六进制字符和负号:

遍历数组ch1并计算十进制整数number:

判断十进制整数number的符号并输出:

3.代码截图

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

  • 问题1:不知道怎么把字母字符转化成整数计算
    解决办法:网上百度。例:n=B-‘A’+10;

  • 问题2:答案部分正确,不知道如何处理负号,输出的数没有正负之分
    解决办法:在设计一遍算法,理一遍思路。最后重新把思路整理为定义一个数组存放筛选出来的字符串,如果这个数组的第一个字符是负号,则这个数是负数。

题目2:找最长的字符串

1. 本题PTA提交列表

2. 设计思路

3.代码截图

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

问题:

错因:

题目3:指定位置输出字符串

1. 本题PTA提交列表

2. 设计思路

3.代码截图

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

一开始写的时候没有注意ch1和ch2也是要输出的。

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

PTA排名

三、同学代码结对互评(1分)

1.互评同学名称

2.我的代码、互评同学代码截图(此处截图核心代码就好,不一定截图全部代码,图上指明是谁的代码。)

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

注意:请尽量找代码差异大的同学互评,或者有些PTA部分正确代码互评。讲下面内容,扣分:
1.没看懂对方代码。
2.看不出二者区别。
3.除了变量不同,或者某个语句不同,其他都一样,这样互评没意义。
4.再重复下,尽量找部分正确同学帮忙去找错误,这样也有助于提高自己的阅读代码能力。
5.做不对同学可以找正确同学互评代码,这样自己才能找到错误。

四、本周学习总结

1.你学会了什么?

1.1指针变量如何定义?

char *ptr;
int *ptr;

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

指针加法一般运用在遍历数组的时候,两个指针变量不能够相加

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

指针不赋初值使用会导致指针指向不明,运行程序时程序会崩溃

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

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

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

int *ptr,  a;
ptr=a;
char *ptr, ch;
ptr=ch;

指针变量表示数组元素:
假设有指针ptr,它已经指向数组,那么这个指针的初始位置便是数组首地址的位置,语句 ptr++; 可表示指针遍历数组地址,语句 *(p++) 可表示遍历数组元素

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

char *ptr, ch;
ptr=ch;//指针指向字符变量
char *ptr, a[]="cool";
ptr=a;//指针指向字符数组首地址

指针指向字符串后,初始位置位于字符串数组的首地址

1.8 利用字符指针操作字符串,如设计函数实现字符串连接,请在此贴图展示代码。说明指针表示字符的方法好处是什么?

2.本周你不会内容有什么?

2.1 课堂派错题罗列及如何订正。

2.2 其他不会的?打算怎么解决

3.数组上机考试小结

3.1 那题错了,请罗列?

3.2 错题如何订正,为什么错了?

posted @ 2017-12-09 16:14  八月秋高风怒号  阅读(300)  评论(0编辑  收藏  举报