PTA第三次作业:
第2题:
#include <stdio.h>
int main (void){
int i,N,k;
scanf("%d",&N);
for(i=1;i<=N;i++){
for(k=1;k<=i;k++)
printf("%d*%d=%-4d",k,i,k*i);
printf("\n");
}
return 0;
}
设计思路:首先考虑到:由于要一行一行的全部输出,故应该使用嵌套循环;先定义i<=N,在定义另一个变量j,使其小于i,从而能输出题目中所要求;
流程图:
错误截图:
错误原因:忽略要按要求将每一行的乘法口诀全部输出,没有使用嵌套循环;并且忽略等号右边数字占四位,否则用空格的条件;
第3题
#include <stdio.h>
int main (void)
{
int j,i,n,sum,item;
sum=0;
scanf("%d",&n);
for(i=1;i<=n;i++){
item=1;
for(j=1;j<=i;j++)
item=item*j;
sum=sum+item;
}
printf("%d",sum);
return 0;
}
设计思路:变量item中存放阶乘的值,用嵌套循环,使输出每个阶乘的值,然后在求阶乘和;注意,item=1一定要放在第一个for语句之后;
流程图:
错误截图:
错误原因:printf后应为"%lf",因为前面用的是double;但根据题目要求,用double输出的不符合题目输出的格式,故应用int型;
https://www.cnblogs.com/WhiteDream/p/10104893.html
https://www.cnblogs.com/louzhe/p/10110600.html
https://www.cnblogs.com/wangxiao2018024023/p/10110452.html

浙公网安备 33010602011771号