C语言博客作业--字符数组
一、PTA实验作业
题目1:统计大写辅音字母
1. 本题PTA提交列表
2. 设计思路
定义变量i,c表示个数,定义数组字符变量a[]。
for i=0 to a[i]
输入a[i];
a[i]='\0';
for i=0 to a[i]
如果a[i]为大写字母且不为元音字母 c++;
输出c.
3.代码截图
4.本题调试过程碰到问题及PTA提交列表情况说明。
- 输入时最后的a[i]要重置为0。
题目2:找最长的字符串
1. 本题PTA提交列表
2. 设计思路
定义变量i,j,n,k=0,m;
输入n;
定义数组字符变量a[n][80];
for i=0 to i<=n
for j=0 to j<80
输入a[i][j];
如果a[i][j]=='\n' break;
for i=0 to i<=n
for j=0 to j<80
如果a[i][j]=='\n'并且j>k
k=j; m=i;
输出The longest is:
for i=0 to i<k
输出a[m][i];
3.代码截图
4.本题调试过程碰到问题及PTA提交列表情况说明。
- 利用二维数组输入字符,遇到换行时要结束循环。
题目3:字符串转换成十进制整数
1. 本题PTA提交列表
2. 设计思路
3.代码截图
4.本题调试过程碰到问题及PTA提交列表情况说明。
- 先转换进制再判断正负号。
二、截图本周题目集的PTA最后排名
三、同学代码结对互评
1.互评同学名称
- 梁志湖
2.我的代码、互评同学代码截图
-
我的代码
-
他的代码
3.我和同学代码不同在哪里?有哪些各自优势?你更喜欢哪种代码风格?
- 他用了两个数组。
- 他的直观,我的简洁。
- 喜欢我的。
四、本周学习总结
1.你学会了什么?
1.1指针变量如何定义(设计代码可以用markdown代码符号渲染)?
类型名 *指针名
1.2 指针加法运算运用在哪种情况,2个指针变量能否相加?
- 可以用于指针指向数组时。
- 2个指针变量不能相加。
1.3 指针不赋初值,直接使用,会出现什么情况,请用DEVC验证,并截图展示?
- 程序运行不了
1.4 课堂派上关于分离浮点数的整数部分和小数部分那题,请用DEVC验证实现,并在此贴图展示,同时说明哪句是指针变量做函数形参,函数实参应该怎么表示。指针变量做函数形参有什么用处?
- int *i 和 float *f 将指针i和指针p]作为形参.
- 实参用地址表示.
- 可以直接修改内存改变实参的值.
1.5 请把课本的冒泡排序的函数改成指针变量做形参格式,并把代码写在底下,注意用markdown语法渲染。
void bubblde(int *p,int n)
{
int i,j,t;
for(i=1;i<=n;i++)
for(u=0;u<n-i;u++)
if(*(p+u)>*(p+u+1)){
t=*(p+u);
*(p+u)=*(p+u+1);
*(p+u+1)=t;
}
}
1.6 如何定义一个指针变量指向数组,如何用指针变量表示数组元素?
- 定义指针时指向数组名.
- 用 *(p+i) 表示 a[i].
1.7 如何定义字符指针指向字符串?指针指向字符串后,初始位置在哪里?
- 定义char *p="fucku".
- 初始位置为字符串首元素的地址,如char *p="fucku" 中 , p指向f.
1.8 利用字符指针操作字符串,如设计函数实现字符串连接,请在此贴图展示代码。说明指针表示字符的方法好处是什么?
- 可以实现对主函数的数据传递.
2.本周你不会内容有什么?
2.1 课堂派错题罗列及如何订正。
2.2 其他不会的?打算怎么解决
- 刷题,认真看书。
3.数组上机考试小结
3.1 那题错了,请罗列?
- 函数题1,2,编程题3.
3.2 错题如何订正,为什么错了?
- 不会做就错了。