程序设计实训报告

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

学生实训报告册课程名称:程序设计基础实训

姓名龚枫

学号**********

班级软件161

指导教师石怡

实训时间2017.3.13 —2017.3.24

实训地点J4 306

物联网工程学院2017年3 月

实训报告

double fun( STREC *a, STREC *b, int *n )

{

int i;

double av=0.0;

*n=0;

for(i=0;i

av=av+a[i].s;

av=av/N;

for(i=0;i

if(av<=a[i].s)

{ b[*n]=a[i];*n=*n+1;} /*将高于等于平均分的学生存入b所指存储单元中,并统计人数*/

return av;

}

2.编写函数fun,其功能是计算:

……s作为函数值返回。

=++++

s m

ln(1)ln(2)ln(3)ln()

在C语言中可调用log(n)函数求ln(n)。log函数的引用说明为:double log(double x)。

例如,若m的值为20,则fun函数值为6.506583。

【答案】

double fun( int m )

{

int i;

double s=0.0;

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

s=s+log(i); /*计算s=ln(1)+ln(2)+ln(3)+…+ln(m)*/

return sqrt(s); /*对s求平方根并返回*/

3.程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函

4. 编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k返回。

例如,若输入17,则应输出:4 6 8 9 10 12 14 15 16。

【答案】

(1) M (2) < (3) k

5. 规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:将字符串中的前导*号全部移到字符串的尾部。

例如,字符串中的内容为:"*******A*BC*DEF*G****",移动后,字符串中的内容应当是:"A*BC*DEF*G***********"。在编写函数时,不得使用C语言提供的字符

串函数。

【答案】

(1) a (2) (3) score[i]

6. 下列给定程序中函数fun的功能是:用递归算法计算斐波拉契数列中第n项的值。从第1项起,斐波拉契数列为:1、1、2、3、5、8、13、21、……

例如,若给n输入7,则该项的斐波拉契数值为13。

【答案】

(1) a[i] (2) a[j] (3) a[j]3.实训中遇到的问题和解决方法(至少5个问题)

7. 下列下列给定程序中,函数fun的功能是:从低位开始依次取出长整型变量s中奇数位上的数,构成一个新数存放在t中。高位仍在高位,低位仍在低位。

例如,当s中的数为7654321时,t中的数为7531。

【答案】

(1)void fun(long s,long *t)

(2)sl=sl*10;

8.

下列给定程序中函数fun的功能是:求两个非零正整数的最大公约数,并作为函数值返回。

例如,若num1和num2分别为49和21,则输出的最大公约数为7;若num1和num2分别为27和81,则输出的最大公约数为27。

【答案】

(1)t=a;a=b;b=t;

(2)return(b);或return b;

9. 下列给定程序中,函数fun的功能是:将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的次序。

例如,s所指的字符串为"def35adh3kjsdf7",执行后结果为"defadhajsdf3537"。【答案】

(1)for (j = i + 1; j < 6; j++)

(2)*(pstr + i) = *(pstr + j) ;

10. 下列给定程序中fun函数的功能是:求表达式

s=aa… aa-…-aaa -aa -a

(此处aa… aa表示n个a,a和n的值在1至9之间)

例如,a=3,n=6,则以上表达式为:

s=333333-33333-3333-333-33-3

其值是296298。

a和n是fun函数的形参,表达式的值作为函数值传回main函数。

【答案】

(1)long s=0, t=0;

(2)t=t/10;

11. 程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函数fun的功能是:将形参a所指结构体变量s中的数据进行修改,并把a的地址作为函数值返回主函数,从主函数中输出修改的数据。

例如,a所指变量s中的学号、姓名和三门课的成绩依次是:10001、"ZhangSan"、95、80、88,修改后输出t中的数据应为:10002、"LiSi"、96、81、89。

【答案】

(1) struct student * (2) a->score[i] (3) a

12. 下列给定程序中已建立了一个带头结点的单向链表,链表中的各结点按数据域递增有序链接。函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一个。

请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。【答案】

(1) q (2) next (3) next

13. 程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到student.dat文件中。函数fun的功能是:从文

相关文档
最新文档