C语言I博客作业10

为君一笑 提交于 2019-12-06 03:23:20
这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 作业要求
我在这个课程的目标是 我希望能开发一种全新的语言程序
这个作业在那个具体方面帮助我实现目标 熟悉使用循环语句的嵌套
参考文献 for语句

本周作业

1.PTA实验作业
2.代码互评
3.学习总结

作业格式

1.PTA实验作业

1.1 输出三角形字符阵列 (15 分)
本题要求编写程序,输出n行由大写字母A开始构成的三角形字符阵列。
1.1.1数据处理
数据表达:定义整形函数n,i,j,z和字符形函数ch。使用for嵌套循环。
数据处理:

include<stdio.h>

int main()
{
int n,i,j,z;
char ch;
ch='A';//给字符变量赋值
scanf("%d",&n);//输入n的值
j=n;
for(i=1;i<=n;i++)//输出从1到n行
{
for(z=1;z<=j;z++)//输出每行上的字符
{
printf("%c ",ch);
ch++;//字符数值+1
}
j--;//每行字符数递减
printf("\n");//跳行
}
}
1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
4 A B C D\n E F H\n I J\n K 默认值
2 A B\n C 随机值

1.1.4 PTA提交列表及说明

错误点:1.j=n的位置放到了scanf语句之前,导致错误输出。(Dve-c++)

1.2 梅森数 (20 分)

1.2.1数据处理
数据表达:定义整形函数n,i,j,m,count=0,使用for循环嵌套和if判断语句。
数据处理:

int main()
{
int n,i,j,m,count=0;
scanf("%d",&n);//输入n
for(i=2;i<=n;i++)//使次幂从2到n
{
m=pow(2,i)-1;//得到梅林数值
for(j=2;j<=sqrt(m);j++)//循环判断梅林数为素数
{
if(m%j==0)
break;
}
if(j>sqrt(m))
{
printf("%d",m);
printf("\n");
count++;//计数器+1
}
}
if(count==0)
printf("None");
return 0;
}
1.2.2实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
6 3\n 7\n 31 默认值
2 3 随机

1.2.4 PTA提交列表及说明

错误点:一开始不能理解if(i>sqrt(m))为什么会出现,多亏了助教帮助。(Dve-c++)

2.代码互评(5分)梅森数

同学代码:

我的代码:

不同点:
找素数的两种方法

3.学习总结(15分)

3.1 学习进度条(5分)

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第三周 约10小时 约100行 掌握关系运算、if-else语句、格式化输入语句scanf(),以及常用的数学库函数 不能脱离书本自己编写代码
第四周 8+小时 约105行 for循环语句 不能灵活运用for语句
第五周 约7小时 约54行 定义函数 还未真正学会定义函数
第六周 约12小时 约186行 自定义函数和多分支结构的运用 这次的填空题不明其意!!
第七周 约6小时 约145行 switch语句的使用 有好多题可以使用if语句会简单一点,switch反倒很难想出怎么编译
第八周 约8小时 约94行 do-while语句和while语句的使用 有时会搞错while内的条件
第九周 约9小时 约87行 循环语句的嵌套 不怎么能灵活使用for循环嵌套
第十周 约8小时 约121行 循环语句的嵌套 情急下想不出语句的灵活使用

3.2 累积代码行和博客字数(5分)

3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结

3.3.2 学习体会
我发现我并不是特别了解调试,我会试着去拿一些题去尝试调试,理解调试的原理。for语句的顺序不小心在这次作业中出现错误,我会抽时间回顾学过的知识。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!