C语言博客作业—一二维数组

一、PTA实验作业

题目1:7-2 求整数序列中出现次数最多的数

1. 本题PTA提交列表

2. 设计思路

Begin
输入整数个数N
定义数组a[N]
输入数组a
for(i 0 to N-1){//进行N次判断
for(j 0 to N-1)
if(a[i]和a[j]相等)
count加一
i等于0//第一次判断
使max=count; n=i;//n放下标,max放次数
i不等于0且count大于max
使max=count; n=i;//重新赋值
count为0//每次循环count为0 
}
输出a[n],max
End

3.代码截图

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

  • 测试点
  • 错误代码

    第一次写的思路比价麻烦,设了两个数组

题目2:7-7 找鞍点

1. 本题PTA提交列表

2. 设计思路

Begin
输入数组a[i][j]
row=col=0;//找行最大的数 
for(i 0 to n-1)
for(j 0 to n-1)
if(a[i][j]大于等于a[i][col])
row=i;col=j;//存放最大数的行列
if(j==n-1)
b[i]存放最大数,f[i]存放最大数所在列 
col=0;//归0
同上面的方法,找列最小的数
for(i 0 to n-1)
for(j 0 to n-1)
if(b[i]和d[j]相等) {//判断最小数和最大数是否存在相等 
输出所在的行列数
flag=1;}//flag作是否有的标志 
if(flag为0)则没有
End

3.代码截图

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


因为我的方法变量名很多,所以只能静下心来举例来一步步的改

题目3:7-8 加法口诀表

1. 本题PTA提交列表

2. 设计思路

Begin
输入repeat
for(i 1 to repeat)//作repeat次运算 
输入数组长度n并定义a[n+1]
for(i 1 to n)//第一行第一列为1
    a[0][i]=i;
    a[i][0]=i;
for(i 1 to n){//计算每一行的数 
for(j 1 to n)
a[i][j]=a[0][j]+a[i][0];
第一行先输出‘+’再输出1
最后一个数没有空格且换行
下面的行输出同第一行
End

3.代码截图

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


没有注意最后一个数没有空格

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

三、同学代码结对互评

1.互评同学名称

  • 黄光奎

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

  • 黄同学的代码
  • 我的代码

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

  • 在定义数组上我是先输入n,再定义数组;而黄同学是直接定义a[10][10]。
    输入第一行第一列时,我是一起循环,黄同学是分开。
    输出我是分第一行和其他行,黄同学是分第一行第一列和余下的下三角。
  • 觉得各有千秋吧

四、本周学习总结

1.你学会了什么?

1.1 C中如何存储字符串?

  • 存放在一维字符数组中

1.2 字符串的结束标志是什么,为什么要结束标志?

  • ‘\0’ 对字符串进行操作时可以结束

1.3 字符串输入有哪几种方法?

  • while((a[i]=getchar())!='\n')
    i++;
    a[i]='\0';
  • sacnf("%s",a);
  • gets(a);

1.4 数字字符怎么转整数,写个伪代码?

输入数字字符
输出数字字符-‘0’

1.5 16进制、二进制字符串如何转10进制?写伪代码?

  • 十六进制
十六进制数组a[n]
for(i=0;a[i]不为‘\0’;i加一)
若字符为数字
n=n*16+a[i]-'0'
若字符为小写字母
n=n*16+a[i]-‘a’+10
若字符为大写字母
n=n*16+a[i]-‘A’+10
输出n
  • 二进制
二进制数组a[n]
for(i=0;a[i]不为‘\0’;i加一)
n=n*2+a[i]-'0'
输出n

2.本周的内容,你还不会什么?

  • 1.二分查找法还不是很懂
  • 2.直接插入排序也还不是很懂
  • 3.pta7-9 判断上三角矩阵这个题输入输出应该跟题目的例子一样,但是答案错误

3.期中考试小结

3.1 你认为为什么没考好?

  • 对于基础知识点有的遗忘,有的生疏
  • 读程序的能力欠缺
  • 短时间内对一个编程题没有很好的思路

3.2 罗列错题。



  • 这两个题是考同一个知识点,从相反的方向出题,静态局部变量的作用范围是定义该变量的源文件范围内,生存周期是从调用到程序结束。

  • 一开始没有看懂term那个表达式是怎么计算的,思路就断了。

3.3 下半学期要怎么调整C的学习?

  • 课堂派:认真做好预习作业,对于错题要认真分析,把错题弄懂
  • PTA:尽自己的能力多做题,提高效率,不做无用功
  • 博客园:对于每周的学习认真分析,总结得失,制定小目标
  • 课堂:认真听老师的例题讲述,尽可能弄懂知识点,打好基础,互动自己独立思考
  • 上机考试:提前备考,把必考代码弄懂,在考试中不紧张,把题目题意弄懂,缕清思路,再打代码
posted @ 2017-12-03 15:29  yawlc  阅读(1080)  评论(1编辑  收藏  举报