C语言第七次博客作业--一二维数组

一、PTA实验作业

题目1:7-3 出生年

1.本题PTA提交列表

2.设计思路

定义year为年份,number存放要求不同数字个数,count计数不同数位,i,rj,n,flag,u,v。
     a[4]存放年份各个位数。
     输入year,number。
     for i=year to.....
     定义a[4]={0},j=0,n=i。
       对n取余再除10,将余数r依次存入a[j++].
          count=1
          for u=1 to u=3
           flag=1
              for v=0 to v=u-1
              如果a[u]=a[v] flag=0
              跳出当前循环
              end
            end
          如果flag!=0,count++
          如果count==number,跳出循环。
         end
          输出年份和相差年份。

3.代码截图

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

  • 1.刚开始不知道如何补零

    解决方法:上网查询。

  • 2.在如何判断年份有几个不同数的时候,判断方法错误。

    解决方法:和同学交流。

题目2:7-7 找鞍点

1.本题PTA提交列表

2.设计思路

定义n为n维数组,i,j,c,r,flag=0。
   定义a[6][6]。
   输入n
  for i=0 to n-1
   for j=0 to n-1
    输入数值赋予a[i][j].
  end.
 for i=0 to n-1
   c=0
   for j=0 to j=n-1
     如果a[i][j]>=a[i][c],c=j
   end
   r=0
   for j=0 to j=n-1
     如果[j][c]<=a[r][c],r=j
   end
  如果 i==r flag=1 跳出循环
  end
  如果flag==1,输出r,c。
  如果flag==0,输出NONE。

3.代码截图

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

  • 1.没有考虑考虑并列极值

    解决方法:将>改成>=

题目3:7-10 杨辉三角

1.本题PTA提交列表

2.设计思路

定义n存放三角的行数,i,j
    输入n
   定义a[10][10]
   for i=0 to n-1
     for j=0 to n-1
      如果i==j或j==0,a[i][j]=1
      否则 a[i][j]=a[i-1][j-1]+a[i-1][j]
      end
 end
   for i=0 to n-1
     for j=0 to n
       输出a[i][j]
       换行
       end

3.代码截图

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

  • 本题没有遇到什么问题。

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

三、同学代码结对互评

7-3

郑嘉亮代码:

我的代码:

评价:我们两个在判断不同数个数的方法不同,就代码而言,他的较为简单且有注释可读性高,但我的代码也容易懂,我更喜欢我的代码。

四、本周学习总结

1.你学会了什么?

1.1 C中如何存储字符串?

  • 采用字符型数组存储字符串。

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

  • 结束标志:\0

    原因:如果没有\0,那么在使用系统函数处理字符串的时候,函数就不能准确判断字符串在哪里结束,从而可能导致数组越界。

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

  • 三种

    1.使用循环结构和scanf("%c", )

    2.scanf("%s", )

    3.gets()

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

  • 定义字符ch存放数字字符

    输出ch-‘0‘

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

  • 16进制:

    定义字符数组a[100]存储16进制字符串,result为转化后结果

    number=0

    for i=0 to a[i]==‘\0‘

    若a[i]为字符0到9,result=result16+a[i]-‘0‘;

    若a[i]为‘a‘到‘f‘,result=result16+a[i]-‘a‘+10;

    若a[i]为‘A‘到‘F‘,result=result16+a[i]-‘A‘+10;

    end

    输出number

    2进制

    定义字符数组a[100]存储2进制字符串,result为转化后结果

    for i=0 to a[i]==‘\0‘

    若a[i]为字符0或1,result=result2+a[k]-‘0‘;

    end

    输出number

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

  • 对字符串的几种输入还不能很好的区别使用。

3.期中考试小结

3.1 你认为为什么没考好?

  • 1.基础的概念没有熟练。

    2.粗心,写反空格,把上面的抄下来抄错。

    3.时间安排不当。

    4.手写代码能力差,卷面不整洁。

3.2 罗列错题

  • 选择题1,10,11,16,17,18。分析题1,2。编程题1,2。

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

  • 将基本的知识点掌握,提高代码简洁和可读性,多学习出色的人的思考方式。
时间: 2024-10-07 13:57:36

C语言第七次博客作业--一二维数组的相关文章

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

一.PTA实验作业 题目1:7-2 求整数序列中出现次数最多的数 1. 本题PTA提交列表 2. 设计思路 定义变量n,i,j,max等于0,a[]10用于存放输入的值,b[10]用于存放a[]中各个数有多少个; 输入n的值 i从0开始,每次加1,输入a[i]的值,直到i==n结束循环 i从0开始,判断i是否<n,,进入下一步,每次加一,直到条件不满足 j从0开始,判断j是否<n,,进入下一步,每次加一,直到条件不满足 如果a[i]==a[j],b[i]加一 i从0开始,判断i是否 输出a[j

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

C语言第六次博客作业--数据类型

一.PTA实验作业 题目1: 7-3 倒顺数字串 1. 本题PTA提交列表 2.设计思路 (1) 定义两个整型变量i,n,n为输出的数. (2)输入n. (3)若n的值不为1, for i=1 to i<=n, 输出i和一个空格, end. for i=n-1 to i>1, 输出i和一个空格, end. 输出1. (4)若n==1,则直接输出1. 3.代码截图 4.本题调试过程碰到问题及PTA提交列表情况说明 (1)没有考虑只输入1的情况. 解决方法:加入if(n==1)的情况. 题目2:7

C语言第六周博客作业--数据类型

一.PTA实验作业 题目1: 7-6 掉入陷阱的数字 1. 本题PTA提交列表 2.设计思路 定义变量N,i,g=1/位数/,a/各位数字相加的和/,b=0,j,N1,c,d/储存N/; do{ for(i=0;i 3.代码截图 4.本题调试过程中碰到的问题以及解决方案 题目2: 7-4 打印菱形图案 1. 本题PTA提交列表 2.设计思路 int n,a,i,l,j,k,g,h,count=0,count1=0; 输入n if((n-1)%2==0)则继续 由规律可以看出, 上半部分(大三角型

C语言第五次博客作业--函数

一.PTA实验作业 题目1:6-2 简单实现x的n次方 1. 本题PTA提交列表 2. 设计思路 (1)定义函数 mypow( double x, int n ) (2)定义整型变量i为循环变量,浮点型变量sum为阶乘的积 (3)for i=1 to n 重复下面步骤 (4)计算sum=sum*x (5)返回sum的值 3.本题调试过程碰到问题及PTA提交列表情况说明 初始代码是这样的:提交错误为段错误 第二天学霸室友告诉说要用for循环和一个求阶乘的变量,然后我就添加了一个for循环,但是并没

C语言第三次博客作业---单层循环结构

一.PTA实验作业 题目1:最佳情侣身高差 1.实验代码 int N,i; double height; //height表示身高 char sex; //sex表示性别 (height>=1.0&&height<=3.0); (N>0&&N<=10); scanf("%d",&N); for(i=1;i<=N;i++){ scanf("\n%c%lf",&sex,&height)

C语言第五次博客作业

一.PTA实验作业 题目1:6-6 使用函数输出水仙花数 1. 本题PTA提交列表 2. 设计思路 (1) 首先先定义narcissistic函数. (2)定义四个整形变量n,a,d,cnt,sum,cnt用来计算有几位数,sum用来存放每个数的cnt次方的和. (3)进行一个循环,让n=number(防止后面需要用number时它的值发生变化),循环中n=n/10,直到 n<=0结束循环,其中每次循环cnt值都加一,用来计算number有几位数. (4)再进行一个for循环(让a=number

C语言第八次博客作业--字符数组

一.PTA实验作业 题目1:字符串转换成十进制整数 1. 本题PTA提交列表 2. 设计思路 3.代码截图 4.本题调试过程碰到问题及PTA提交列表情况说明 格式错误:因为我多输出了一个换行 部分正确:当我加了flag=1的时候,结果如图 然后我把flag=1给注释掉,还是部分正确,但是错的位置不一样了,结果如图 然后问了助教,他说我没有处理符号,运行结果有多了#,可是我不太明白怎么处理那个符号,虽然最后帮忙改正确了,可是还是没有弄清楚它 题目2:统计一行文本的单词个数 1. 本题PTA提交列表

C语言第十一次博客作业---函数嵌套调用

一.实验作业 1.1 PTA题目 题目:递归实现顺序输出整数 1. 本题PTA提交列表 2. 设计思路 printdigits函数 定义整型变量result存放结果 if n是10的倍数 result=n else 取n的个位数赋值给result 递归调用printdigits(n/10) 输出result 3.代码截图 4.本题调试过程碰到问题及PTA提交列表情况说明 ①递归出口错误.零的情况考虑错误. ②修改递归出口后正确. 1.2 学生成绩管理系统 1.2.1 画函数模块图,简要介绍函数功