第二次作业

一.程序调试
调试下面1个例程,各位同学调试用自己的学号模4加1序号的题,写清错误提示(截小图)及修改内容(10分); 说明:有可能没有错误提示,但未达到预计功能。,题目来源为“ C语言程序设计实验与习题指导(第3版)调试源程序”中error04_1~4;利用Autoflowchart软件查看程序的流程图,将流程图导成word格式,加入必要的文字说明,并说明该程序的功能(10分)

include <stdio.h>

int main(void){
int m, n, j, k; /* j表示最小公倍数,k表示最大公约数 */

do{
    printf("Input m: ");
    scanf("%d", &m);
    printf("Input n: ");
    scanf("%d", &n);
}while(m < 0 || n < 0);
j = m;
while(j / n != 0)    /* 调试时设置断点 */
    j = j + m;
   k = (m * n) / j;     /* 调试时设置断点 */
printf("最大公约数是%d \n最小公倍数是%d\n ", k, j);

return 0;

}
修改后:

include<stdio.h>

int main(void)
{
int M,N;
int k;//最大公约数
int j;//最小公倍数
int x;
int i;
scanf("%d %d",&M,&N);
if(M>N){
i=M;
}
else{
i=N;
}

for(x=1;x<=i;x++)
{
if(M%x0&&N%x0){
k=x;
}
}
j=kM/kN/k;//公约数与公倍数的关系
printf("%d %d",k,j);

return 0;
}

二.
三.
四.
4.1.

include<stdio.h>

include<math.h>

int main(void)
{
double eps;
double sum=0.0;
int x=1;
int count=1;

scanf("%lf",&eps);
if(eps<=1){
while(fabs(pow(-1,count+1)1.0/x)>=eps)
{
sum=sum+pow(-1,count+1)
1.0/x;
x+=3;
count++;
}
}
else{
printf("sum = 1.000000\n");
return 0;
}
printf("sum = %.6f\n",sum);

return 0;
}

4.2


4.3


5

还是有很多不会的地方,但是已经更正了很多,下一个目标就是学好指针,以后学好数据结构和算法,每次吸取错误的教训

在学习C语言的同时学习JAVA,语言之间也是相通的
每日做到至少50行代码

posted on 2018-05-24 22:22  高崧淇  阅读(115)  评论(0编辑  收藏  举报

导航