问题 | 答案 |
---|---|
这个作业属于在哪个课程 | C语言程序设计II |
这个作业要求在哪里 | C语言I作业09 |
我在这个课程目标是 | 学好C语言,为后面学习打好基础 |
这个作业具体在哪里方面帮助我 | 熟悉break、continue的使用,熟悉使用循环的嵌套解决问题 |
参考文献 | 百度 , C语言作业评价标准 |
1.PTA实验作业
1.1 跟奥巴马一起画方块
美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!
输入格式:
输入在一行中给出正方形边长N(3≤N≤21)和组成正方形边的某种字符C,间隔一个空格。
输出格式:
输出由给定字符C画出的正方形。但是注意到行间距比列间距大,所以为了让结果看上去更像正方形,我们输出的行数实际上是列数的50%(四舍五入取整)
1.1.1数据处理
数据表达:用了整形变量i,j, n;字符型变量 c
数据处理:先定义变量i,j, n,c;
输入整数你,字符c;
for i=1 to i<=(n+1)/2 do//输出行数实际上是列数的50%
i++
for j=1 to j<=2 do//输出的列数
j++
end
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
10 a | aaaaaaaaaa aaaaaaaaaa aaaaaaaaaa aaaaaaaaaa aaaaaaaaaa | PTA数据 |
4 a | aaaa aaaa | 自选的 |
1.1.4 PTA提交列表及说明
1:编译错误:第一次的编译错误在于第六行的末尾的一个分号。
2:编译错误:这一次的编译错误第八行缺少一个加号。
1.2找完数
所谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、3为6的因子。本题要求编写程序,找出任意两正整数m和n之间的所有完数。
输入格式:
输入在一行中给出2个正整数m和n(1<m≤n≤10000),中间以空格分隔。
输出格式:
逐行输出给定范围内每个完数的因子累加形式的分解式,每个完数占一行,格式为“完数 = 因子1 + 因子2 + ... + 因子k”,其中完数和因子均按递增顺序给出。若区间内没有完数,则输出“None”。
1.2.1 数据处理
1.数据表达:
用了整形变量m,n,i,j,s,k,count
2.数据处理:
定义变量m,n,i,j,s,k,count,m,n是输入的一个区间的正整数,i,j,k是在这个区间的数,count是累加完数
for(i=m;i<=n;i++)//就行循环
for(j=1;j<i;j++)
if(i%j==0)//判断是否是该数的因子
s+=j;累加因字的和
if(s==i)判断是否为完数
printf("%d = 1",i)先打印1,每个完数都有1
for(k=2;k<j;k++)//重复操作
找到所有完数
if(count==0)没有就输出None
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据|输出数据|说明
2 30|6 = 1 + 2 + 3 28 = 1 + 2 + 4 + 7 + 14|PTA数据
2 10|6 = 1 + 2 + 3|随机打的
5 30|6 = 1 + 2 + 3 28 = 1 + 2 + 4 + 7 + 14|随机打的
1.2.4 PTA提交列表及说明
2.代码互评
同学代码截图
自己代码截图
同学代码截图
自己代码截图