0.展示PTA总分(0----2)
1.本章学习总结(2分)
1.1 for循环语法
for( ; ; )
{
}
适用于循环次数已知的循环,但硬要用while也行
1.2 while、do while循环语法
while()
{
}
do
{
}
while()
while适用于循环次数未知但范围已知的循环,但硬要用for也行.
do while特点是无论条件如何都会先循环一次,在某些特殊情况下使用
1.3 跳出循环相关语句breakcontinue
break:执行到此当前循环就此结束
continue:执行到此时当前此次循环结束接着下次循环
如
int i sum=0
for(i=1;i<=3;i++)
{
if(i=2)break;
sum=sum+i;
}
int i sum=0
for(i=1;i<=3;i++)
{
if(i=2)continue;
sum=sum+i;
前者sum=1。
后者sum=4。
1.4 循环嵌套
for( ; ; )
{
for( ; ; )
}
while()
{
for( ; ; )
}
可无限嵌套,但注意尽量简化防超时
2 编程技巧总结(2分)
各种数列求和问题
求交错序列前N项和
本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。
总结:可以用flag的正负变化解决加减变化问题,其他就是数学问题了
特殊a串数列求和
给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。
总结:核心公式num = num * 10 + a
求幂级数展开的部分和
已知函数ex可以展开为幂级数1+x+x2/2!+x3/3!+⋯+xk/k!+⋯。现给定一个实数x,要求利用此幂级数部分和求e^x的近似值,求和一直继续到最后一项的绝对值小于0.00001。
总结:注意s=pow(x,i)*1.0/f(i);中的1.0其他没什么
图形打印问题
打印九九口诀表
下面是一个完整的下三角九九口诀表:
总结:%-4d占四位向左对齐,其他就循环中循环
打印菱形图形
打印出如下图案(菱形)
总结:用两个循环嵌套,分别表示增减
3.PTA实验作业(6分)
3.1 数列求和问题
本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。
3.1.1 流程图或伪代码介绍思路
3.1.2 代码截图
3.1.3 PTA提交列表及说明
3.2 图形打印问题
打印出如下图案(菱形)
3.2.1 数据处理
分别对空格和*循环
3.2.2 代码截图
3.2.3 PTA提交列表及说明
3.3 自选一题,介绍printf调试如何检查错误
换硬币 (20分)
将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
3.3.1 单步调试截图