c语言 实验报告 范例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
实验题目:选择结构程序设计
实验目的:
(1)了解C语言表示逻辑量的方法(以0代表“假”以非0代表“真”)。
(2)学会正确使用逻辑运算算符和逻辑表达式。
(3)熟练掌握if语句的使用(包括if语句的嵌套)。
(4)熟练掌握多分支选择语句——switch语句。
(5)结合程序掌握一些简单的算法。
(6)进一步学习调试程序的方法。
实验内容:
本实验要求事先编好解决下面问题的程序,然后上级输入程序并调试运行程序。
(1)有一函数:
⎪⎩
⎪⎨⎧≥-<≤-<=10113)
101(12)1(x x x x x x y 输入x 的值,输出y 相应的值。用scanf 函数输入x 的值,求y
值(第四章第六题) 运行程序,输入
x 的值(分别为x<1、101<≤x 、10≥x 这三种情况),检查输出y 值是否正确。
答:
1)调试通过的程序清单如下:
#include
void main() {
int x,y;
printf("请输入X:");
scanf("%d",&x);
if(x<1)
y=x;
else if(x<10)
y=2*x-1;
else y=3*x-11;
printf("y=%d\n",y);
}
3)调试过程出现的问题说明及处理方法:
编译提示信息如下:
Compiling...
c4_4.c
F:\20113009711_选择结构程序设计\第四次实验\c4_4.c(10) : error C2059: syntax error : 'bad suffix on number'
F:\20113009711_选择结构程序设计\第四次实验\c4_4.c(10) : error C2146: syntax error : missing ';' before identifier 'x'
F:\20113009711_选择结构程序设计\第四次实验\c4_4.c(10) : warning C4552: '-' : operator has no effect; expected operator with side-effect
F:\20113009711_选择结构程序设计\第四次实验\c4_4.c(11) : error C2181: illegal else without matching if
F:\20113009711_选择结构程序设计\第四次实验\c4_4.c(11) : error C2059: syntax error : 'bad suffix on number'
F:\20113009711_选择结构程序设计\第四次实验\c4_4.c(11) : error C2146: syntax error : missing ';' before identifier 'x'
F:\20113009711_选择结构程序设计\第四次实验\c4_4.c(11) :
warning C4552: '-' : operator has no effect; expected operator with side-effect
执行cl.exe 时出错.
c4_4.obj - 1 error(s), 0 warning(s)
原因分析:
由于习惯在数学上习惯于用2x表示2*x,导致在这里忽略了“*”,以致程序出现严重错误。
(2)从键盘输入一个小于1000的正数,要求输出它的平方根(如平方根不是
整数,则输出其整数部分)。要求在
输入数据后先对其进行检查是否小
于1000的正数。若不是,则要求重
新输入。
1)调试通过的程序清单如下:
#include
#include
#define M 1000
int main()
{
int i,k;
printf("请输入一个小于%d的整数i:",M); scanf("%d",&i);
if(i>1000)
{printf("输入的数据有误,请重新输入:",M);
scanf("%d",&i);
}
k=sqrt(i);
printf("%d的平方根的整数部分是%d\n",i,k);
return 0;
}
2)调试通过的运行结果:
3)调试过程出现的问题说明及处理方法:Compiling...
c4_4.c
F:\20113009711_选择结构程序设计\第四次实验\c4_4.c(10) :
error C2018: unknown character '0xa3'
F:\20113009711_选择结构程序设计\第四次实验\c4_4.c(10) : error C2018: unknown character '0xbb'
F:\20113009711_选择结构程序设计\第四次实验\c4_4.c(11) : error C2146: syntax error : missing ';' before identifier 'scanf'
F:\20113009711_选择结构程序设计\第四次实验\c4_4.c(13) : warning C4244: '=' : conversion from 'double ' to 'int ', possible loss of data
执行cl.exe 时出错.
c4_4.exe - 1 error(s), 0 warning(s)
答:
因为把第十行的“;”在中文模式输入,变成了“;”导致编译错误。
(3)给出一个百分制成绩,要求输出成绩等级A,B,C,D,E.90分以上为A,
81~89分为B,70~79分为C,60分
~69分为D,60分以下为E。
①事先编好程序,要求分别用if语句和