高级语言程序设计实验 c2Word文档格式.docx
《高级语言程序设计实验 c2Word文档格式.docx》由会员分享,可在线阅读,更多相关《高级语言程序设计实验 c2Word文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
内存:
2GByte
硬盘:
500GByte
(2)软件环境
操作系统:
MicrosoftWindows7
编译系统:
MicrosoftVisualC++
3.实验步骤:
按如图所示流程进行实验内容的调试。
(1)在XP操作系统中,启动VC++编译环境;
(2)在VC++编译界面输入C源程序;
(3)选择编译、组建、执行命令进行编译、链接和运行,并记录实验数据;
(4)按以上方法依次输入其他源程序并调试、运行和记录实验数据。
4.实验内容:
输入并运行下列程序,查看程序运行的结果。
#include<
>
voidmain()
{
printf(“**********\n”);
printf(“ProgramingincALabrtryMaual\n”);
printf(“****\n”);
printf(“*\n”);
}
查看程序运行的结果
inti,j,m,n;
i=8;
j=10;
m=++i;
n=j--;
printf(“%d,%d,%d,%d\n”,i,j,m,n);
找出下列程序中的错误,改正后写出程序运行结果.
Intx,y=z=5,aver;
x=7;
AVER=(x+y+z)/3
printf(“AVER=%d\n”,aver);
}
输入参考程序。
在下划线处分别填入不同的变量定义、表达式、输出格式控制符号。
inta,b,x;
f\n"
c);
编程求
。
要求a和x从键盘输入。
当a=,x=时,求y的值。
floata,x,y;
scanf("
%f%f"
&
a,&
x);
y=sin(sqrt(a*x))+log(a+x);
printf("
%f\n"
y);
从键盘上任意输入一个三位整数,按逆序输出。
例如输入456,输出654。
提示:
456%10=6456/10%10=5456/10/10=4
6*102+5*101+4*100=654
main()
{
intn;
inta,b,c;
intnum;
请输入一个三位整数n\n"
);
%d"
&
n);
c=n/100;
b=(n-c*100)/10;
a=n%10;
num=a*100+b*10+c;
num=%d\n"
num);
}
5.实验总结
实验二:
分支结构与循环结构程序设计
6
设计型
年月日
1.实验目的:
了解C语言表示逻辑量的方法;
(0为“假”,非0为“真”)学会正确使用关系表达式和逻辑表达式。
⑵熟练掌握if语句、switch语句、while语句、do-while语句和for语句的使用方法。
⑶结合程序掌握一些简单的算法。
掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、递推等)。
学习调试程序
2.实验环境:
Windows7编程软件:
VisualC++
3.实验内容:
(1)使用if语句或者switch语句编程求解以下分段函数:
2x-1(x<
1)
(1<
x<
10)
2x+1(x>
y=
floatx,y;
%f"
if(x<
y=2*x-1;
elseif(x>
=1&
&
y=sqrt(x+10);
else
y=2*x+1;
(2)使用if语句或者switch语句编程实现以下功能:
从键盘任意输入0----100之间的整数作为学生的成绩,要求根据以下的条件判断并输出相应成绩的等级。
大于等于90,小于等于100:
优秀
大于等于70,小于等于89:
良好
大于等于60,小于等于69:
及格
小于60:
不及格
intx;
switch(x/10)
{
case10:
printf("
优秀\n"
break;
case9:
case8:
良好\n"
case7:
case6:
及格\n"
default:
不及格\n"
(3)n的值从键盘输入,要求分别用三种循环语句实现以下功能:
1+2+3+4+……+n
1、用while语句实现。
inti=1,s=0,n;
while(i<
=n)
s=s+i;
i=i++;
%d\n"
s);
2、用do----while语句实现
do
=n);
3、用for语句实现。
for(;
i<
=n;
i++)
(4)n的值从键盘输入,要求用循环语句实现以下功能:
1!
+2!
+………+n!
voidmain()
{intn,i;
floats=0,t=1;
for(i=1;
{t*=i;
s+=t;
}
1+2!
+3!
...+n!
=%f\n"
(5)程序填空,求100以内的整数中最大可被13整除的数是哪一个
intmain()
inti;
for(i=100;
i>
=0;
i--)
{if(i%13==0)
break;
i);
return0;
(6)输入两个正整数m和n,求其最大公约数和最小公倍数。
intmain()
intp,r,n,m,temp;
Entern,m:
"
%d,%d"
n,&
m);
if(m<
n)
temp=m;
m=n;
n=temp;
p=m*n;
r=m%n;
while(r!
=0)
m=n;
n=r;
r=m%n;
Thegreatestcommondivisor:
n);
Thelowestcommonmultiple:
p/n);
if语句的功能是将两数中大的那个放在m中,保证m>
n,然后再求m对n的余数r,通过while语句循环,直到余数r为零。
(7)输入一行字符,分别统计出其中的英文字母、空格、数字和其它字符的个数。
charc;
intletters=0,space=0,digit=0,other=0;
Enterlinecharacter:
\n"
while((c=getchar())!
='
\n'
)
if(c>
=’a’&
c<
=’z’||c>
=’A’&
=’Z’)letters++;
elseif(“c==”)space++;
elseif(c>
=’0’&
=’9’)digit++;
elseother++;
letters:
%d\nspace:
%d\ndigit:
%d\nother:
letters,space,digit,other);
(8)编写程序输出如下图形,请填空。
#include"
*
***
*****
*******
***
#defines'
'
intn,i,j;
Entern:
scanf(“%d”,&
n);
for(i=1;
{for(j=1;
j<
=10;
j++)
putchar(s);
for(j=1;
j<
=n-i;
=2*i-1;
putchar(‘*’);
=n-1;
=i;
=2*(n-i)-1;
putchar('
*'
记录运行结果:
4.实验总结
实验三数组及数组的应用
2
综合设计型
1、掌握一维数组和二维数组的定义、数组元素的引用和数组的输入输出方法。
2、重点掌握一维数组的应用(如排序等)。
3、了解与数组有关的数值计算方法(如矩阵运算)。
Windows7
编程软件:
(1)以下程序以每行输出8个数据的形式输出a数组。
voidmain()
{inta[50],i;
for(i=0;
i<
50;
scanf(“%d”,);
{if();
printf(“%3d”,a[i]);
printf(“\n”);
输出结果:
(2)利用数组实现以下功能:
从键盘任意输入若干个整数(不超过100个),统计并输出这些整数的平均值,以及高于此平均值的整数个数。
程序:
(3)对于二维数组
,求1)所有元素中最大、最小值。
2)各行元素之和。
3)主对角线元素之和。
程序:
4.实验总结:
实验四:
函数与指针
掌握函数的定义及函数调用的方法
⑵掌握函数的声明方法,能利用函数来实现具有独立功能的程序模块
⑶熟悉函数的嵌套调用和递归调用
⑷正确理解指针的概念及其使用方法
学会使用通过指针去访问数组元素
2.实验内容:
(1)已知部分程序如下,请补全程序并回答。
本题要求掌握函数的定义、声明、和调用的方法
#include"
voidmain()
{voida1();
验总结