C语言I博客作业10

||
-|-|
这个作业属于那个课程|C语言程序设计II
这个作业要求在哪里|作业要求
我在这个课程的目标是|会使用c语言进行编程序
这个作业在那个具体方面帮助我实现目标|写PTA作业,帮助自己进行总结
参考文献|同构数

1.PTA实验作业

1.1输出三角形字符阵列

本题要求编写程序,输出n行由大写字母A开始构成的三角形字符阵列。

输入格式:

输入在一行中给出一个正整数n(1≤n<7)。

输出格式:

输出n行由大写字母A开始构成的三角形字符阵列。格式见输出样例,其中每个字母后面都有一个空格。

输入样例1:

4

输出样例1:

A B C D 
E F G 
H I 
J 

1.1.1数据处理

数据表达:定义整型变量n,num,字符型变量letter,n是输入的数,num用于计算每行输出的字母个数,letter是输出的字母。
数据处理

定义整型变量n,num,字符型变量letter,n是输入的数,num用于计算每行输出的字母个数,letter是输出的字母。

	输入n;
	把n赋值给num;
	把A赋值给letter;
	for int i = 0 to n
	
		for int j = 0 to num
		{
			输出字母letter;
			letter自增,就是A加1等于B;
		}
		换行;
		num进行自减;
	end for

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
2 A B
C
输出符合三角形
3 A B C
D E
F
输出符合三角形

1.1.4 PTA提交列表及说明

提交列表说明:
部分正确:我用num计算每行输出的字母个数,但在循环后面忘记num减1了,最后在第一层循环的最后加一个num--;

1.2 梅森数

输入格式:

输入在一行中给出正整数n(n<20)。

输出格式:

输入样例1:

6

输出样例1:

3
7
31

1.2.1数据处理

数据表达:定义整型变量n, num, a, b,n是输入的数,num是计算梅森数公式的数,num累加到n,a用于判断梅森数,b用于判断范围内有没有梅森数。
数据处理

定义整型变量n, num, a, b,n是输入的数,num是计算梅森数公式的数,num累加到n,a用于判断梅森数,b用于判断范围内有没有梅森数。
	
	输入n;
	for (int i = pow(2, num) - 1; i <= pow(2, n) - 1; i = pow(2, num) - 1)
	       
		for int j = 2 to sqrt(i)
		
			if i除以j的余数等于0 then
				a自增;
		end for
		if a == 0  then
		{
			输出梅森数i;
			b自增;
		}
		num自增;
		把0赋值给啊;
	end for
	if b == 0 ehen
		输出None;
	

1.2.2实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
2 3 在这个范围内有一个梅森数
7 3
7
31
127
在这个范围内有4个梅森数

1.2.4 PTA提交列表及说明

提交列表说明:
部分正确:忘记判断没有梅森数的情况了,在最后加一个判断没有梅森数的条件。

1.3同构数

一个数恰好出现在它的平方数的右端,这个数就称为同构数。找出1~1000之间的全部同构数。

输出格式:

在一行中输出所有满足条件的同构数,每个数输出占6列。没有其它任何附加格式和字符。

输出样例:

     1     5     6    25    76   376   625

1.3.1数据处理

数据表达:定义整型变量i1, a, b,i1每次循环把i赋值给i1,用于计算是不是同构数,a是用于判断位数,b用于计算10的a次方。定义函数number用于计算平方。
数据处理

定义整型变量i1, a, b,i1每次循环把i赋值给i1,用于计算是不是同构数,a是用于判断位数,b用于计算10的a次方。定义函数number用于计算平方。

定义函数number;
主函数
{
	for int i = 1 to 1000
	
		把i赋值给i1;
		while (i1)
		
			i1除以10;
			a自增;
		end while
		for int j = 0 to a
			b乘以10;
		end for
		if number(i) % b == i  then
			输出同构数i;
		把1赋值给b;
		把0赋值给a;
	end for
}
函数number
{
	定义整型变量num;
	计算给函数值的平方i,赋值给num;
	返回 num;
}

1.3.2实验代码截图

1.3.3 造测试数据

输入数据 输出数据 说明
1 5 6 25 76 376 625 本题就一个输出样例

1.3.4 PTA提交列表及说明

提交列表说明:
这道题是一次性过的,这题的重点在于同构数是什么,同构数就是正整数n若是它平方数的尾部,则称n为同构数,只需要计算出n的位数,再把n的平方除以10的n次方,看是否相等,相等就是同构数。

2.代码互评

同学代码截图

自己代码截图

1.我们的代码大致相同,唯一的不同就是处理每行输出字母个数的方法,我是用的计数法,而他是在条件里处理的,我比他多定义一个变量。

同学代码截图

自己代码截图

相同处:都是用的计算位数的方法然后求余,来判断是否是同构数
不同处:
1.我是自定义函数求平方,他是用的库函数
2.我用for来计算求余除的数,他是用switch来判断除以多少来取余。

3.学习总结

3.1 学习进度条

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第四周 10 50 学会了简单输出
第五周 20 100 学会了输入
第六周 10 150 学会了if-else
第七周 5 80 学会了for
第八周 30 300 学会了switch语句r 对char的用法还不怎么会
第九周 20 335 简单的了解了函数的使用 自定义函数还不太会
第十周 20 343 学习了指针 还不知道指针具体的用处
第十一周 25 503 学习指针 感觉指针好难啊
第十二周 30 489 学习了结构体 指针还是不会
第十三周 30 265 学习了预处理 预处理的套用比较多,多层套用不会
第十四周 35 639 学习了python的基础 看着还是看不懂

3.2 累积代码行和博客字数

时间 博客字数 代码行数
第四周 633 50
第五周 1565 150
第六周 1565 300
第七周 2227 380
第八周 3027 680
第九周 4111 1015
第十周 5322 1358
第十一周 6817 1861
第十二周 8617 2350
第十三周 10562 2615
第十四周 12387 3254

3.3 学习内容总结和感悟

3.3.1 学习内容总结

3.3.2 学习体会

学习了python的基础,发现很多东西用python来写比较简单,python的集成度高,很多东西都能直接处理,但在做比较复杂的题的时候还是c好用一点,简单的题目用python可能一行就写完了,但c就要写很多行。我发现语言很多,学会基础很简单,但想要深入,却很困难,所有选定一个方向很重要。

posted @ 2019-11-27 18:40  ahhhhhhhhhhhhhh  阅读(373)  评论(1编辑  收藏  举报