教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 学前教育 >

电1C语言实验报告(2)

来源:网络收集 时间:2026-08-03
导读: 《计算方法与程序设计实验》 scanf(\p=(a+b+c)/2; if(a+b>ca+c>bb+c>a) { area=sqrt(p*(p-a)*(p-b)*(p-c)); printf(\} else printf(\} Key:输入3,6,5时运行结果:area= 7.48 输入1,2,3时运行结果:Error 2. 计算器

《计算方法与程序设计实验》

scanf(\p=(a+b+c)/2;

if(a+b>c&&a+c>b&&b+c>a) {

area=sqrt(p*(p-a)*(p-b)*(p-c)); printf(\} else

printf(\}

Key:输入3,6,5时运行结果:area= 7.48 输入1,2,3时运行结果:Error 2. 计算器程序。用以下数据运行该程序:1+2;2-1;3*4;4/3,输出计算结果。 #include \main() {

float a,b,s; char c;

printf(\scanf(\switch(c) {

case '+': printf(\case '-': printf(\case '*': printf(\case '/': printf(\default: printf(\} }

Key:输入1+2时运行结果:3.000000 输入2-1时运行结果:1.000000 输入3*4时运行结果:12.000000 输入4/3时运行结果:1.333333

3.下列给定程序中,将大写字母转换为对应小写字母之后的第5个字母;若小写字母为v~ z,则使小写字母的值减21。例如,若是字母A,则转换为小写字母f;形参是字母W,则转 换为小写字母b。请改正程序中的错误,使它能得出正确的结果。 #include main() {

char c1,c2;

printf(\ c1=getchar();

if(c1>='A'&&c1<='Z') {

/*************found**************/ C2=C1+32;

if(c2>='a' && c2<='u')

6

《计算方法与程序设计实验》

/*************found**************/ c2=c2-5;

else if(c2>='v' && c2<='z') c2=c2-21; printf(\ } }

Key:第一个错误:C2=C1+32; 应改为:c2=c1+32; 因C语言中标识符大小写有别。

第二个错误: c2=c2-5; 应改为:c2=c1+5; 因将大写字母转换为对应小写字母之后第5个字母 4.编程输入三个整数,输出最大数和最小数。 具体要求如下:

(1)用if 语句实现。

(2)三个整数要用scanf 函数输入,且输入前要有提示。

(3)三个数比较完后将最大数赋给max,最小数赋给min 输出。 (4)用以下数据运行该程序:23、10、89 【程序源代码】 #include void main() {int a,b,c,max,min;

printf(\ scanf(\ max=min=a; if(b>max)max=b; else min=b; if(maxc)min=c;

printf(\

【实验总结】通过做这个实验,我掌握if语句的两种格式和switch语句的使用;通过编写、调试并运行简单的C程序,增强了学习并探索C语言的激情,并巩固了C语言的一些基本语法规则知识。

实验名称:实验4 三种循环语句的使用

实验时间:第7周周三 实验地点:5423

【实验目的】掌握while语句、do-while语句和for语句的格式、功能和使用;掌握三种语句的联

系和区别;掌握连加算法和连乘算法

【实验内容】

1.分析以下程序的输出结果,区分3 种循环控制语句及变量的前后自增。

#include main()

{ int a,b,c,d,i,j,k; a=10; b=c=d=5; i=j=k=0; for(; a>b; ++b) i++; while(a>++c) j++; do{k++;}while(a>d++);

7

《计算方法与程序设计实验》

printf(\

Key:5,4,6 因for(; a>b; ++b) i++;是先判断a>b,再执行i++;++b而while(a>++c) j++;是先判断 a>++c前自增,再执行j++;do{k++;}while(a>d++);是先执行k++;再判断a>d++后自增

23581321,,,,,,…12358132.下列给定程序的功能是:求出如下分数序列的前n项之和。

例如,若n=5,则应输出8.391667。请改正程序中的错误,使其得出正确的结果。

#include main( )

{ int a,b,c,k,n = 5;

double s;

s = 0.0; a = 2; b = 1; for ( k = 1; k <= n; k++ ) { /************found************/ s = s + (Double)a / b; c = a; a = a + b; b = c; }

printf( \ is: %lf\\n\ s ); }

Key: 错误:s = s + (Double)a / b; 应改为 s = s + (double)a / b; 因C语言中的关键字只能小写 3.设计一个程序,计算1至100自然数之和。

具体要求如下:

(1)分别用while、do~while和for语句实现。

(2)定义一个循环变量i,一个存放相加和的变量sum。加数从1开始有规律地变到100,每次递增1,不断循环,直至i的值超过100时退出循环。

【程序源代码】

用while语句实现 #include \main() {int sum=0,i=1; while(i<=100) {sum=sum+i; i++;}

printf(\ }

用do~while语句实现 #include \main() {int sum=0,i=1; do

8

《计算方法与程序设计实验》

{sum=sum+i; i++;

}while(i<=100);

printf(\用for语句实现 #include \main() {int sum=0,i=1; for(;i<=100;i++) sum=sum+i;

printf(\4.求n!。

具体要求如下:

(1)定义一个变量t,初值为1,则第一次循环乘1,第i次循环乘i,直到第n次循环执行后,t中存放的就是所求的值(n从键盘上输入)。

(2)用for语句实现。 (3)用以下数据运行该程序:5。

…… 此处隐藏:621字,全部文档内容请下载后查看。喜欢就下载吧 ……
电1C语言实验报告(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/595017.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)