2022年大学计算机基础大学计算机A---C语言程序设计实验报告 .pdf
* 大学计算机基础实验报告课程名称大学计算机A(一)-C语言程序设计班级计算机科学与技术二机房机号2*-60 姓名* 学号* 日期2019.10.24 输入学号实验名称:实验二基本数据处理实验目的:1、掌握算术表达式和赋值表达式的使用。2、掌握基本输出函数的使用。3、能够编程实现简单的数据处理。4、掌握简单 C 程序的查错方法。实验内容:(具体操作请 “认真听老师演示性讲解”)在本地电脑中新建一个文件夹,用于存放C 程序,文件夹的名字要求是“学号姓名-实验序号”,如 E: 1720115555 张三 -02。启动 C-Free ,完成如下各题。1、 改错题:改正下列程序中的错误, 计算某个数x 的平方 y, 并分别以“y=x*x ” 和 “x*x=y ”的形式输出x 和 y 的值。请不要删除源程序中的任何注释。(源程序 error2_1.c)。输入输出示例(假设x 的值为 3):9=3*3 3*3=9源程序(有错误的程序)#include int main(void) int y; y=x*x; printf(%d=%d*%d, x); /* 输出printf(d*%d=%d, y); 2、 编程题:求华氏温度150 F 对应的摄氏温度。计算公式:329595FC,式中: C表示摄氏温度,F 表示华氏温度。输入输出示例:fahr = 150, celsius = 66 运行自己编写的程序得到的结果,应该与题目中给出的输入输出示例完全一致,包括输入输出格式。a)思考:如果改用公式5(32)9CF计算华氏温度1500F所对应的摄氏温度,这两个公式的计算结果是否一样?为什么?3、 编程题:已知某位学生的数学、英语和计算机课程的成绩分别是87 分、 72 分和 93名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 6 页 - - - - - - - - - 分,求该生3 门课程的平均分。输入输出示例:math=87, eng=72,comp=93, average=84 4、 编程题:计算并显示2 与 5 的和。a)思考( 1) :如何改写上面的程序来实现计算2 与 5 的和,以算术的形式显示?如: 5+2=7 b)思考( 2) :如何改写上面的程序来实现可以从键盘上输入任意两位数,并输出其和? (选作, scanf 函数的使用,请参阅主教材P37 页第 2 章第 3 节例 2.5)5、 编程题:当n 为 152 时,分别求出n 的个位数字( digit1 ) 、十位数字(digit2 )和百位数字( digit3)的值。输入输出示例整数 152 的个位数字是2,十位数字是5,百位数字是1 提示: n 的个位数字digit1 的值是 n%10,十位数字digit2 的值是( n/10)%10,百位数字 digit3 的值是 n/100 a)思考( 1) :如果 n 是一个四位数,如何求出它的每一位数字?b)思考( 2) :如果 n 是从键盘上输入的任意一个四位数,又如何修改程序求出它的每一位数字?(选作, scanf 函数的使用)上交作业的方法:1.将程序代码及注释和运行程序的窗口复制到实验结果下方对应的题号上,并把这次实验上机操作中遇到的问题及解决方法、心得等填好完成实验报告。2.保存以上所有按要求已调试通过,并形成.c(或 .cpp)和 .exe 文件到以自己的“学号姓名 -02”命名的文件夹中,并将以自己的“学号姓名”命名的文件夹压缩后上交到 ftp:/10.172.250.252:1161 中的“作业上传”文件夹下的“报告上交02”文件夹下的子文件夹“源文件压缩上交”中,同时把以“学号姓名-02”命名的word文档上交到“报告上交02”文件夹下的另一子文件夹“word 文件上交”中。特别提醒: 每次上传的文件名一定要是“学号姓名-实验序号 . doc”(如 1720115555 张三-02.doc),而且学号一定要在前面,学号没写或学号写在后面的一律按没上传对待。上传前一定要把本文件退出,否则无法上传。实验结果与分析(运行界面截图,打开需要截的图,按ALT+Print Screen后,将光标移到下面,单击右键后选择“粘贴”) :1. ()改正后的程序代码及注释#include int main(void) int y,x=3; y=x*x; printf(%d=%d*%dn, y,x,x); /* 输出 */ printf(%d*%d=%d, x,x,y); return 0; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 6 页 - - - - - - - - - ()运行结果窗口截图(窗口适当缩小)和分析2. ()程序代码及注释(1)#include int main() int F = 150, C; C=F*5/9-32*5/9; printf(fahr=%d,celsius=%dn,F,C); return 0; (2)#include int main() int F = 150, C; C=5*(F-32)/9; printf(fahr=%d,celsius=%dn,F,C); return 0; /*两个方法的结果不一样,因为在c 语言中,若 a,b都是整数, a%b!=0 时,小数部分会被舍弃, a/b的结果只取整数。 */()运行结果窗口截图(窗口适当缩小)和分析名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 6 页 - - - - - - - - - 3. ()程序代码及注释#include int main() int math=87,eng=72,comp=93,average; average=(math+eng+comp)/3; printf(math=%d,eng=%d,comp=%d,average=%dn,math,eng,comp,average); return 0; ()运行结果窗口截图(窗口适当缩小)和分析4. ()程序代码及注释(1)#include int main() int a=2,b=5,c; c=a+b; printf(%d+%d=%dn,a,b,c); return 0; (2)#include int main() int a,b,c; scanf(%d%d,&a,&b); c=a+b; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 6 页 - - - - - - - - - printf(%d+%d=%dn,a,b,c); return 0; ()运行结果窗口截图(窗口适当缩小)和分析5. ()程序代码及注释(1)#include int main() int n=152,b,c,d; b=n%10; c=(n/10)%10; d=n/100; printf(n 的个位是 %d,n 的十位是 %d,n 的百位是 %dn,b,c,d); return 0; (2)#include int main() int n=1521,b,c,d,f; b=n%10; c=(n/10)%10; d=(n/100)%10; f=n/1000; printf(n 的个位是 %d,n 的十位是 %d,n 的百位是 %d,n 的千位是 %dn,b,c,d,f); return 0; (3)#include int main() 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 6 页 - - - - - - - - - int n,b,c,d,f; scanf(%d,&n); b=n%10; c=(n/10)%10; d=(n/100)%10; f=n/1000; printf(n 的个位是 %d,n 的十位是 %d,n 的百位是 %d,n 的千位是 %dn,b,c,d,f); return 0; )运行结果窗口截图(窗口适当缩小)和分析问题及解决方法,心得:(实验中遇到的问题和解决问题的方法以及下次课还想老师再重复讲解的知识等等)熟能生巧评定成绩:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 6 页 - - - - - - - - -