中国矿业大学C语言程序设计实验报告 第2章

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2.1

举例1:求某位同学语数英三科的平均分:实现方法为,求语数英三科的总分,然后除以3 以下部分是例子算法的源代码:

//习题2.1 什么是算法:算法是用于解决某一特定问题的指令序列

/*问题1:求某位同学语数英三科的平均分:实现方法为,求语数英三科的总分,然后除以3*/

#include

float main()

{

intchinese,math,english;

float average;

printf("请以此输入语数英三科的成绩:\n");

scanf("%d,%d,%d",&chinese,&math,&english);

printf("语文%d\n",chinese);

printf("数学%d\n",math);

printf("英语%d\n",english);

average=(chinese+math+english)/3;

printf("语数英三科的平均成绩为:%f\n",average);

}

运行结果为:

举例2:怎么把大象放入冰箱?

1.打开冰箱

2.把大象装进冰箱

3.关上冰箱

举例3:求两个数的最大值

算法:

1.输入两个数A和B,定义一个临时变量C

2.比较A和B的大小,如果A>B,则令C=A,否则令C=B

3.返回C的值,C即为A和B中较大的值

2.2

解答:结构化的算法由基本的结构程序组成;包括顺序结构,选择结构,循环结构三种基本结构,在基本的结构之间不存在向前或向后的跳转,流程的转移只存在于一个基本结构范围之内. 这种算法便于阅读,修改和维护,减少了程序出错的机会,提高了程序的可读性,保证了程序的质量.

习题2-8-1源代码:

#include

void main()

{

int prime(int x);

int year;

int i=0;

for(year=1900;year<=2000;year=year+4)

{

if(prime(year))

{

printf("%d\t",year);

i++;

}

if (i%5==0)

printf("\n");

}

}

int prime(int x)

{

if((x%4==0&&!(x%100==0))||x%400==0)

{

return 1;

}

return 0;

}

运行结果:

习题2-8-2源代码:

#include

#include

float abc;

void main()

{

float b24ac(float x,float y,float z);

float x1,x2;

float a,b,c;

printf("请输入¨?a:");

scanf("%f",&a);

printf("\n请输入¨?b:");

scanf("%f",&b);

printf("\n请输入¨?c:");

scanf("%f",&c);

b24ac(a,b,c);

x1=(-b+abc)/(2*a);

x2=(-b-abc)/(2*a);

printf("xa=%f\t\tx2=%f\n",x1,x2); }

float b24ac(float x,float y,float z)

{

if((((y*y)-4*x*z)>=0))

{

abc=sqrt(y*y-4*x*z);

}

else abc=sqrt(-(y*y-4*x*z));

return (abc);

}

运行结果:

习题2-8-3 源代码:

#include

void main()

{

int a[10];

int i;

int max;

for(i=0;i<10;i++)

{

a[i]=2*i+1;

}

max=a[0];

for(i=1;i<10;i++)

if(a[i]>max)

{

max=a[i];

}

printf("10个数中最大的是%d\n",max); }

运行结果:

相关文档
最新文档