各章节编程题参考答案
第1章 C语言程序设计基础
1参考答案:
#include “stdio.h”
main()
{printf(“How are you.\n”);
}
2参考答案
#include
main()
{
printf(“ * ”);
printf(“ *** ”);
printf(“ ***** ”);
printf(“ *** ”);
printf(“ * ”);
}
3参考答案
#include
main()
{
printf("* * * * * * * * * * * * * *\n");
printf(" Very good!\n");
pritnf("("* * * * * * * * * * * * * *\n");
}
第2章算法及算法设计简介
1.解答:
算法是为完成某个具体的问题而设计的有限的操作步骤。有一个入口,一个出口,只采取顺序、分支、循环三种控制结构的算法,称为结构化算法。
2.解答:
S0: 0=> s;
S1: 1=>i;
S2: i+s=>s;
S3: i+1=>i;
S4: 若i<=100,返回S2;否则,结束;
3.解答:
S0: 接收10个数=> 数组a[i];
S1: 0=>i;
S2: a[i]=>min;
S3: i+1=>i;
S4: 若a[i]
4.解答:
分析:设x、y、z分别为公鸡、母鸡、小鸡的只数,依题意: x+y+z=100 5x+3y+z/3=100;
伪代码描述的算法如下:
开始
对 0<=x<=20 范围内每个x值,
0<=y<=33 范围内每个y值,
0<=z<=100 范围内每个z值,
执行下面操作:
{if 条件:z是3的倍数、x+y+z=100和5x+3y+z/3=100都成立
打印x,y,z /* 为一组解 */
}
结束
5 解答:
S0:i=0;
S1:判断gi是否大于80,若大于转S3;
S2:i=i+1;
S3:打印i,gi
S4:若i<10,返回S1否则继续执行。
6 解答:求两个整数的最大公约数、最小公倍数
分析:最大公约数的算法思想:(最小公倍数=两个整数之积/最大公约数)
S0:输入m,n,r=0;
S1:如果m>n,则m,n交换;
S2:p=m*n;
S3:r=n%m,n=m,m=r;
S4:如果m==0,转S5,否则转S3;
S5:打印n,p/n;
7 解答:
素数是指除1及本身以外不能被其他数整除的自然数。下面介绍用穷举法求素数。
?? 1). 2是素数;t=0;
?? 2). i=2~n,则:
?? (ⅰ)如果i是素数,则其必须是奇数且不能被2~n-1 中的任一个数整除。
?? (ⅱ)如果i是素数,则输出该素数且计数器t=t+1;
?? 3).输出2~N之间素数的总数:total=t;
?? 4).程序结束
第3章数据描述与基本操作
1.参考答案:
#include “stdio.h”
main( )
{
float c,f;
printf(“please enter f\n”);
scanf(“%f”,&f);
c=5*(f-32)/9;
printf(“The result is :%f\n”,c);
}
2.参考答案:
#include ”stdio.h”
main()
{
int num,hundred,ten,indiv;
printf(“Please enter a three-bits number\n”);
scanf(“%d”,&num);
h