您好,欢迎来到意榕旅游网。
搜索
您的当前位置:首页c语言编程例题及答案

c语言编程例题及答案

来源:意榕旅游网
实 验 报 告 三 (四学时)

课 程 专业班级 姓 名 C语言程序设计 实验项目 学 号 实验日期 函数程序设计 成 绩 批阅日期 指导教师 2.1 实验目的

(1)掌握函数的定义和调用; (2)了解函数间的参数传送;

2.2 基础实验

【题目3-1】编写函数实现将输入的字母转换成大写字母(若输入小写则转换,大写字母直接输出,其他字符请输出提示“请输入字母”)。

算法分析:

1、输入:通过键盘接收一个字符; 2、条件判断:调用判别函数

3、函数功能为:蒋所输入字符进行判别处理,若输入小写则转换,大写字母直接输出,其他字符请

输出提示“请输入字母”

4、程序结束。

【实验3-1】代码及运行结果:

可编辑范本

【题目3-2】从键盘输入若干个同学计算机课程期末考试成绩(学生人数可由用户输入),求该课程的期末成绩的平均分并输出。

函数功能要求:实现若干(例如5名)同学的的期末成绩输入,并统计出平均分。

算法分析:

1、输入:通过键盘接收同学个数; 2、调用求平均分函数 3、输出平均成绩 4、程序结束。

可编辑范本

【实验3-2】代码及运行结果:

可编辑范本

【题目3-3】请用函数编写程序实现:计算3 到100 之间所有素数的平方根之和,并输出。s=148.874270。

算法分析:

1、编写函素数判别函数,确定返回标记,如果是素数返回1,否则返回0 2、编写主函数,用一重循环遍历100以内所有数据

2.1、通过素数判别函数对循环的数据进行是否为素数的判别 2.2、返回判别为真的整数,并输出 3、程序结束。

【实验3-3】代码及运行结果:

#include #include int Prime(int x) {

int i ; if(x<=1)

return 0;

for(i=2;i<=x-1;i++) { }

if(x%i==0) { }

return 0;

可编辑范本

}

return 1;

int main() { i=3; sum=0; while(i<=100) { }

printf(\"sum=%f\\n\ return 0; }。

if(Prime(i)) { } else { } i++;

sum=sum+0; sum=sum+sqrt(i); double i,sum;

可编辑范本

【实验3-4】要求:请编写一个函数fun,它的功能是:根据以下公式求π 的值(要求满足精度0.0005, 即某项小于0.0005 时停止迭代):

输出参考结果如下:

可编辑范本

算法分析:

1. 编写函数fun进行通项公式求解

2. 在主函数中对fun函数进行调用,采用循环调用的方式得到每一项的运算结果 3. 判断通项公式的计算结果是否在精度范围要求内,从而确定循环是否继续执行 4. 输出通项公式运算加和

【实验3-4】代码及运行结果:

可编辑范本

2.3 延伸训练

【实验3-5】编写函数fun,其功能是:根据以下公式求P 的值,结果由函数值带回。m 与n 为两个正整数且要

求m > n,。例如: m=12,n=8 时,运行结果为495.000000。

【实验3-5】代码及运行结果:

可编辑范本

【实验3-6】编写一个函数,通过计算机随机产生一道四则运算题(两个操作数为在1-10之间的整数,操作类型为加、减、乘、除中的任意一种),并要求作答。

若输入答案正确,则显示“Right!”,否则显示“Not correct!”。

然后,在main函数中调用该函数,完成若干道题目测试,并显示回答正确的题目数量。 提示:关于生成随机数

程序运行实例:

可编辑范本

【实验3-6】代码及运行结果:

#include #include #include #include int calculate (int s); int main() { }

可编辑范本

int s;

printf(\"请输入需要完成的题目数量:\"); scanf(\"%d\ printf(\"\\n\");

printf(\"回答正确%d道题目\\n\ return 0;

int calculate(int s) {

int a=0; int b=0; int mode=0; double c=0; double result=0; int count=0; int i;

srand((unsigned)time(NULL)); for(i=1;i<=s;i++) {

a=rand()%10+1; b=rand()%10+1; mode=rand()%4; printf(\"%d\ switch(mode) { case 0:

printf(\"+\"); result=a+b; break;

case 1:

printf(\"-\"); result=a-b;

可编辑范本

break;

case 2:

printf(\"*\"); result=a*b; break;

case 3:

printf(\"/\"); result=1.0*a/b; break;

default: }

printf(\"%d=\\n\

printf(\"请输入计算结果:\\n\"); scanf(\"%lf\ if(fabs(c-result)<1e-6) { } else { }

printf(\"Wrong\\n正确答案是:%f\\n\\n\ count++; printf(\"Right\\n\\n\");

printf(\"something is wrong!\\n\"); break;

可编辑范本

}

}return count;

3 实验总结

[此文档可自行编辑修改,如有侵权请告知删除,感谢您的支持,我们会努力把内容做得更好]

可编辑范本

可编辑范本

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务