当前位置:文档之家› C程序设计基础实验指导

C程序设计基础实验指导

【实验内容】
1.编程计算下面数学表达式的值
(1) (2)c× (3)lnln(103.5+2)
2.下面表达式计算中,哪些地方会发生类型转换?各个转换从什么类型转换到什么类型?表达式计算的结果是什么?试编程进行验证。
(1) 2.5+2*7%2/4(2) 4*(2L+6.5)-12
(3) 10/(5*3)(4) 2*10.0/(5*3)
3.将一个正整数n以相反的顺序输出的递归算法可以如下描述:
如果要输出的整数只有一位
则输出该整数
否则输出整数的个位数字
反向输出除个位以外的全部数字
结束
据此算法设计的递归算法如下:
void printn(int n) Nhomakorabea{ if ((n>=0)&&(n<=9))
printf("%d",n);
f=a;
g=b;
printf("%u,%u\n",f,g);
a=c;
printf("%d,%d\n",a,c);
a=d;
b=e;
printf("%d,%d\n",a,b);
}
实验3顺序结构程序设计
【实验目的】
1.熟练掌握格式输入与格式输出函数的使用,理解scanf函数的工作过程。
2.熟练掌握赋值语句的使用方法。
实验5循环结构程序设计
【实验目的】
1.练习并掌握利用while语句、for语句、do_while语句实现循环结构的方法。
2.掌握循环结构和选择结构的嵌套设计方法。
3.掌握多重循环的设计方法,掌握控制语句break、continue、goto语句的使用方法。
4.调试和修改循环结构的程序。
【实验内容】
1.编写程序,分别用while循环、for循环和do_while循环计算12+22+...+n2的值。比较三个程序在循环控制上的特点。
5.输入并运行下面一个需要在运行时输入数据的程序,程序要求从键盘输入三个浮点数,输出它们的和。
#include <stdio.h>
mian()
{float a,b,c,sum;
printf(" input a,b,c: ")
scanf("%f %f %f",&a,&b,&c);
sum=a+b+c;
printf("\n sum=%f\n",sum);
}
输入该程序,然后进行编译和连接,如果出错,仔细检查并修改错误,再进行编译连接,直到没有错误为止。
按Ctrl+F9运行程序,按照屏幕提示输入a、b、c三个变量的值,变量值之间用空格分隔,输入完毕按回车键【Enter】。
查看运行结果,判断结果正确与否。
保存文件,查看你的工作目录下是否有该文件。
实验2数据类型和表达式计算
f(x) = x2-x+3 (0≤x<10)
x3-7x (x≥10)
具体要求如下:
(1)用if语句实现分支,自变量和函数值均用双精度类型。
(2)自变量用scanf函数输入,给一些输入提示。
(3)分别输入三种区间中x的值,检查输出函数值是否正确。
2.编写程序,用scanf函数输入一个年份,计算该年2月份有多少天。
4.输入并运行下面最简单的C程序
使用File菜单的New命令创建一个新文件。
在编辑区输入下面程序:
#include <stdio.h>
mian()
{
printf(" Hello World!\n")
}
按功能键F9进行编译和连接,观察屏幕显示的编译信息。如果出现出错信息,信息窗口中将显示错误内容及定位错误时的语句行号,修改错误,再进行编译。
2.进入Turbo C 2.0的工作环境,参照附录设置环境,用File/Change dir…设置当前工作目录、用Options/Directories设置系统的安装路径、包含文件路径、标准库文件路径、输出文件路径和源文件路径。
3.熟悉Turbo C 2.0的系统菜单组成及功能。学习使用功能键和快捷键调用菜单项的方法。掌握文件建立、编辑、修改和保存的方法。落实文件的存储位置是否是你的工作目录,如果不是,回第二步重新设置。了解编译、连接和运行命令在屏幕菜单项的位置和调用方法。
4.scanf函数输入一个百分制成绩,输出成绩等级A、B、C、D、E,其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下分为E。
要求百分制成绩用整数输入,在输入前要有提示,输入后要判断成绩的合理性,对不合理的成绩,应输出出错信息。输出结果中应包括百分制和等级成绩,并要有文字说明。使用if语句和switch语句分别实现。
3.进一步体会C程序的结构组成,体会主函数main的作用。
4.使用顺序结构解决几个简单的计算问题。
【实验内容】
1.编写程序,使用格式输入函数,从键盘按顺序输入下列数据,再将其用合适的格式分类输出到屏幕上。注意scanf函数的格式要求。
‘a’、15、‘c’、100、20.6、60000、3500、32768、450.34、126.3455568
break;
case 2:printf("Green\n");
break;
case 3:printf(" Red\n");
break;
case 4:printf(" Yellow\n");
break;
default: printf(" Error Input\n");
}
运行程序,使用Turbo C中跟踪执行功能(功能键F8)查看程序执行过程。体会break语句的作用。去掉若干个break语句,观察运行结果有什么变化。并试着将程序结构改为嵌套if结构。运行并查看结果。
2.用迭代法求方程x3-x-1=0在x=1.5附近的根。
要求:首先把方程变换为迭代公式:x= ,用1.5作迭代的初值,结束条件为两次近似解之差的绝对值小于0.0001。
参考程序如下:
#include<stdio.h>
#include<math.h>
main()
{ float x1,x=1.5;
do {
程序如下:
#include <stdio.h>
main()
{ int a,b;
long d,e;
unsigned f,g;
char c;
a=100;
b=-100;
c='a';
d=50000;
e=32767;
printf("%d,%d\n",a,b);
printf("%ld,%ld\n",d,e);
printf("%c,%d\n",c,c);
实验4选择结构程序设计
【实验目的】
1.理解C语言表示逻辑量的方法,学会正确使用逻辑运算符和逻辑表达式。
2.掌握利用if结构实现选择结构的方法。
3.掌握利用switch结构实现多分支选择结构。
4.掌握若干简单算法。
5.学习选择结构程序的调试。
【实验内容】
1.编写程序计算下面分段函数的值:
2x+5 (x<0)
如果编译无错,按Ctrl+F9运行程序,按Alt+F5切换到用户屏,观察运行结果。
改变源程序中双引号内的字符串内容,重新编译和连接,并查看运行结果。
保存文件,查看你的工作目录下是否有该文件。编译连接的中间文件应该在Output设置的目录中。如果没有设置Output目录,中间文件应该在当前工作目录中。
printf("a=%d b=%d c=%d\n",a,b,c);
printf("a=%c b=%c c=%c\n",a,b,c);
}
输入: 1【Enter】
ab【Enter】
分析本题程序的输出结果,解释scanf函数的工作过程,试用其他输入数据验证你的分析结果。
4.以下C程序的功能是:从键盘依次输入4个整数,计算并输出这4个数的平均值。
x1=x;
x=pow((x+1),1.0/3.0);
}while(fabs(x-x1)>=0.0001);
printf("x=%6.2f\n",x);
}
3.编写程序,计算菲波那契数列第n项的值。注意数列项的数据类型,应考虑足够大项的数据表示要求。
4.以下程序,输出下三角形状的乘法九九表。
#include <stdio.h>
#include <stdio.h>
main()
{ int a,b,c,d,av;
printf("Input a,b,c,d:");
scanf("%d,%d,%d,%d",&a,&b,&c,&d);
av=(a+b+c+d)/4;
printf("av=%f\n",av);
}
观察运行结果,想一想为什么,将最后一句中的“%f”改为“%d”,观察结果有什么变化,如果想使计算结果为实数,如何修改程序?如果想计算4个实数的平均数,如何修改程序?
main()
{ int color;/*用整型数表示颜色号*/
printf("Enter color number: ");
scanf("%d",&color);
相关主题