您的位置:首页 > 其它

第七周PTA作业

2017-11-09 20:55 253 查看


第一题:

#include<stdio.h>
int main()
{
int i=1;
int sum=0;
while(i<=100){
sum=sum+i;
i++;
}
printf("sum = %d\n",sum);
return 0;
}


第一步:由题意可得,此题需要使用while循环语句,所以首先定义两个整型变量i=1,和sum=0。

第二步:定义完变量后,使用while语句,设置i的范围小于等于100,并在循环语句中添加sum=sum+i,i++。

第三步:循环一百次后输出结果即可。

PTA输出结果:



DEV C++输出结果:



流程图:



第二题:

#include <stdio.h>
int main()
{
int N;
int i=1;
scanf("%d",&N);
double S;
double sum=0.000000;
while(i<=N){
S = 1.0/(2*i-1);
sum=sum+S;
i++;
}
printf("sum = %.6lf\n",sum);
return 0;
}


第一步:由题意可得,此题需要定义两个整型变量i=1,N,和两个双倍精准度变量sum,S。

第二步:利用while语句对s=1.0/(2*i-1),sum=sum+S,i++进行循环,直到i<=N,才结束。

第三步:输入N的值则可得到相应的答案。

PTA结果显示:



错误显示


DEVC++显示:



第三题:

#include<stdio.h>
int main(){
int i,N;
scanf("%d",&N);
double sum=0;
int flag=-1;
for(i=1;i<=N;i++){
flag=-flag;
sum=sum+i*1.0/(2*i-1)*flag;
}
printf("%0.3f",sum);
return 0;
}


第一步:由题意得,需要定义两个整型变量i,N,设置输入N的语句。

第二步:定义双倍精准度变量sum,和一个flag=-1。

第三步:利用for循环语句第一步使得flag的-1变成1,然后进行运算第一个1.0/(2*i-1)*flag的公式,依次循环到第N次,输出结果。

错误截图:





最后正确截图:



遇到的错误:

1:变量定义的型没有看明白。

2:带小数的没有乘以1.0.

流程图:



第四题:

#include<stdio.h>
int main(void)
{
int n,i,l,min;
scanf("%d",&n);
scanf("%d",&l);
min=l;
for(i=1;i<n;i++){
scanf("%d",&l);
if(min>l)
min=l;
}
printf("min = %d",min);
return 0;
}


第一步:由题意判断,此题需要定义四个量分别为n,i,l,min,n为输入多少数据,min为最小值。

第二步:利用for循环语句,循环体为在i=1,i<=n的范围内,循环n次,每次输入一个值l,如果min大于l则将l的值赋值给min,以此类推,每次都将小的值赋值给min。

第三步:输入相应的数值,则可得到答案。

PTA结果显示:



DEXC++显示:



流程图:



第五题:

#include <stdio.h>
int main(){
int i,n;
double total=0,grade;
int count=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%lf",&grade);
if (grade>=60) count=count+1;
total=total+grade;
}
if(n==0)
printf("average = 0.0\n");
else
printf("average = %.1f\n",total/n);
printf("count = %d",count);
return 0;
}


第一步:由题意得,定义三个整型变量i,n,count=0,和两个双倍精准度变量total=0,grade。

第二步:输入n的值,利用for循环语句来求所有成绩的和,并加入一个if条件语句判断输入的值是否大于等于60,如果小于则记做一次次数。

第三步:输入所有成绩,则可得出所有成绩之和,以及不及格人数。

错误:



正确:



流程图:



本周学习内容:

1:复习了while,do while,和for循环语句,学习了break,continue语句和flag标志的知识。

难点:

每一个只知识都是难点,我还是需要多加练习才能熟悉的掌握他们。

评论的人:

1:http://www.cnblogs.com/lin2580/p/7841437.html

2:http://www.cnblogs.com/123456hjx/p/7823616.html

3:http://www.cnblogs.com/hezongyan/p/7812104.html





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: