高级语言程序设计实验.docx

上传人:b****1 文档编号:10877331 上传时间:2023-05-28 格式:DOCX 页数:18 大小:89.93KB
下载 相关 举报
高级语言程序设计实验.docx_第1页
第1页 / 共18页
高级语言程序设计实验.docx_第2页
第2页 / 共18页
高级语言程序设计实验.docx_第3页
第3页 / 共18页
高级语言程序设计实验.docx_第4页
第4页 / 共18页
高级语言程序设计实验.docx_第5页
第5页 / 共18页
高级语言程序设计实验.docx_第6页
第6页 / 共18页
高级语言程序设计实验.docx_第7页
第7页 / 共18页
高级语言程序设计实验.docx_第8页
第8页 / 共18页
高级语言程序设计实验.docx_第9页
第9页 / 共18页
高级语言程序设计实验.docx_第10页
第10页 / 共18页
高级语言程序设计实验.docx_第11页
第11页 / 共18页
高级语言程序设计实验.docx_第12页
第12页 / 共18页
高级语言程序设计实验.docx_第13页
第13页 / 共18页
高级语言程序设计实验.docx_第14页
第14页 / 共18页
高级语言程序设计实验.docx_第15页
第15页 / 共18页
高级语言程序设计实验.docx_第16页
第16页 / 共18页
高级语言程序设计实验.docx_第17页
第17页 / 共18页
高级语言程序设计实验.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

高级语言程序设计实验.docx

《高级语言程序设计实验.docx》由会员分享,可在线阅读,更多相关《高级语言程序设计实验.docx(18页珍藏版)》请在冰点文库上搜索。

高级语言程序设计实验.docx

高级语言程序设计实验

《高级语言程序设计》实验课程要求

高级语言程序设计是一门实践性很强的课程,理论与实践双重并重,学好理论课的同时应加强注重动手能力的培养与提高。

为了达到上述目的,本课程根据课程内容,安排了十个实验题目,在实验时应注意以下几点,并完成相应的实验要求。

一、实验设备

1软件系统:

WindowXP操作系统、MicrosoftVisualC++6.0

2硬件环境:

多媒体机房、微机

二、实验报告要求

1源程序清单;

2运行结果截图;

3.每个实验另起一页。

三、每次上机前应了解本次的实验目的与要求,对题目进行问题分析和算法求解,按要求完成实验报告。

 

实验一C语言系统环境

一、目的要求

1熟悉C语言的运行环境;

2学会C语言的源程序的调试及运行;

3了解C源程序的结构特点。

二、实验内容

1求三个数中的大数并输出。

三、源程序清单

#include

intmain()

{

inta,b,c,max;

scanf("%d%d%d",&a,&b,&c);

if(a>b)max=a;

elsemax=b;

if(c>max)max=c;

elsemax=max;

printf("max=%d\n",max);

return0;

}

四、运行结果截图:

实验二顺序结构程序设计

一、目的要求

1掌握C语言数据类型及对它们的赋值方式;

2学会使用C语言的有关算数运算符及表达式的使用;

3熟练掌握数据的输入输出方法,能正确使用各种格式转换符。

二、实验内容

要求用scanf输入数据,输出计算结果,结果取小数点后两位。

1已知圆的半径r=1.5cm,求圆的周长、面积。

2已知一个圆柱高h=3cm,求圆柱体的体积。

三、源程序清单

#include

intmain()

{

floatr,l,s,h,v;

floatpi=3.1415926;

scanf("%f%f",&r,&h);

l=2*pi*r;

s=pi*r*r;

v=s*h;

printf("周长l=%.2f\n面积s=%.2f\n圆柱体积v=%.2f\n",l,s,v);

return0;

}

四、运行结果截图

 

实验三选择结构程序设计

一、目的要求

1了解C语言表示逻辑量的方法;

2学会正确使用C语言的逻辑运算符和逻辑表达式;

3熟练掌握if语句和switch语句。

二、实验内容

1输入三个数,判断能否以这三个数构成一个三角形,若能则输出所构成三角形的类别(等边、等腰、直角或斜三角形)。

2已知年月,求该年该月有多少天。

三、源程序清单

1#include

int main()

{

 double a,b,c;

 scanf("%lf %lf %lf",&a,&b,&c);

if((a<0)||(b<0)||(c<0)||(a+b<=c)||(b+c<=a)||(a+c<=b))

printf("不能构成三角形\n");

 else

 if(a==b&&b==c&&a==c)

 printf("能构成等边三角形\n");

 else if(a==b||b==c||a==c) 

 printf("能构成等腰三角形\n");

 else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))

 printf("能构成直角三角形\n");

elseprintf("能构成斜三角形\n");

 return 0;}

2

#include

intmain()

{

intyear,month,day[12]={31,28,31,30,31,30,31,31,30,31,30,31};

scanf("%d,%d",&year,&month);

if(year%400==0||(year%100!

=0&&year%4==0))day[1]=29;

printf("%d天\n",day[month-1]);

return0;

}

四、运行结果截图

1

2

 

实验四循环结构程序设计

一、目的要求

1掌握while语句、do-while语句和for语句实现循环的方法;

2用循环的方法实现各种算法。

二、实验内容

1求两个自然数,其和是667,最小公倍数与最大公约数之比为120:

1。

2一个球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下,再反弹。

求它在第10次落地时,共经过多少米?

第10次反弹多高?

三、源程序清单

1

#include

intmain()

{

intm,n,yue,bei;

for(n=1;n<334;n++)

{

m=667-n;

for(yue=n;yue>=1;yue--)

if(m%yue==0&&n%yue==0)break;

bei=m/yue*n;

if(bei%yue==0&&bei/yue==120)

printf("m=%d,n=%d\n",m,n);

}

return0;

}

2

#include

intmain()

{

floatsum=100,h=sum/2;

intn;

for(n=2;n<=10;n++)

{

sum=sum+h*2;

h=h/2;

}

printf("sum=%f\nh=%f\n",sum,h);

return0;

}

四、运行结果截图

1

2

 

实验五数组及其应用

一、目的要求

1掌握一维数组和二维数组的定义、赋值和输入输出方法;

2掌握与数组有关的算法(特别是排序算法);

3掌握字符数组的使用方法和字符串函数的使用。

二、实验内容

1用选择法对10个整数进行排序,要求用scanf函数输入。

2打印杨辉三角形。

3编程将两个字符串连接起来,不能使用strcat函数。

三、源程序清单

1

#include

intmain()

{

inti,j,min,temp,a[11];

for(i=1;i<=10;i++)

scanf("%d",&a[i]);

printf("\n");

for(i=1;i<=10;i++)

printf("%4d",a[i]);

printf("\n");

for(i=1;i<=9;i++)

{

min=i;

for(j=i+i;j<=10;j++)

if(a[min]>a[j])min=j;

temp=a[i];

a[i]=a[min];

a[min]=temp;

}

for(i=1;i<=10;i++)

printf("%4d",a[i]);

printf("\n");

return0;

}

2

#include

#defineN10

intmain()

{

inti,j,a[N][N];

for(i=0;i

{a[i][i]=1;

a[i][0]=1;

}

for(i=2;i

for(j=1;j<=i-1;j++)

a[i][j]=a[i-1][j-1]+a[i-1][j];

for(i=0;i

{for(j=0;j<=i;j++)

printf("%6d",a[i][j]);

printf("\n");

}

printf("\n");

return0;

}

3

#include

intmain()

{

chars1[80],s2[40];

inti=0,j=0;

printf("inputstring1:

");

scanf("%s",s1);

printf("inputstring2:

");

scanf("%s",s2);

while(s1[i]!

='\0')i++;

while(s2[j]!

='0')s1[i++]=s2[i++];

s1[i]='\0';

printf("\nThenewstringis:

%s\n",s1);

return0;

}

四、运行结果截图

1

2

实验六函数及其应用

一、目的要求

1掌握函数的定义方法;

2掌握函数中实参和形参的传递关系和对应关系,返回语句return的使用;

3掌握函数的一般调用、嵌套调用和递归调用的方法。

4了解局部和全局变量,静态和动态存储方式,内部和外部函数。

二、实验内容

1用递归法将一个整数n转换成字符串。

n的位数不确定,可以是任意位数的整数。

例如,输入483,应输出字符串“483”。

2编程求前n个素数。

n的大小由用户键盘输入决定。

三、源程序清单

1#include

int main()

{

void convert(int n);

int num;

printf("intput an integer:

");

scanf("%d",&num);

printf("output:

");

if(num<0)

{putchar('-');putchar(' ');

num=-num;

}

convert(num);

printf("\n");

return 0;

}

void convert(int n)

{int i;

if((i=n/10)!

=0)

convert(i);

putchar(n%10+'0');

putchar(32);

}

2

#include

intmain()

{

intn=0;

printf("n=");

scanf("%d",&n);

ints=1;

intj=0;

for(inti=0;i

{s++;

intt=s-1;

for(j=2;j

{

if(s%j==0){break;}

}

if(j==t||s==2)

{

printf("%d\n",s);

}

else{i--;}

}

return0;

}

四、运行结果截图

1

2

实验七指针及其应用

一、目的要求

1掌握指针的概念,会定义和使用指针变量;

2学会使用字符串的指针和指向字符串的指针变量;

3学会使用指针数组的引用方法和理解其含义;

4了解命令行参数的使用方法。

二、实验内容

1用指针完成函数strlen的功能。

2将n个数按照输入的顺序的逆序输出,用函数实现。

(传递时的实参或形参尽量使用指针进行传递。

三、源程序清单

1.#include

intmain()

{

intlength(char*p);

intlen;

charstr[20];

printf("intputstring:

");

scanf("%s",str);

len=length(str);

printf("Thelengthofstringis%d.\n",len);

return0;

}

intlength(char*p)

{

intn;

n=0;

while(*p!

='\0')

{n++;p++;}

return(n);

}

 

2.#include

intmain()

{

voidsort(char*p,intm);

inti,n;

char*p,num[20];

printf("intputn:

");

scanf("%d",&n);

printf("intputnumbers:

\n");

for(i=0;i

scanf("%d",&num[i]);

p=&num[0];

sort(p,n);

printf("thesequenceis:

\n");

for(i=0;i

printf("%d",num[i]);

printf("\n");

return0;

}

voidsort(char*p,intm)

{

inti;

chartemp,*p1,*p2;

for(i=0;i<=m/2;i++)

{p1=p+i;

p2=p+(m-1-i);

temp=*p1;

*p1=*p2;

*p2=temp;

}

}

四、运行结果截图

1

2

实验八结构体、共同体

一、目的要求

1掌握结构体定义方法,结构体变量作为函数参数的调用方法;

2掌握共同体的定义和使用方法,以及与结构体的区别。

二、实验内容

1定义一个结构体变量(包括年、月、日)。

计算某一日在本年中是第几天?

(注意闰年的不同)

2将一个链表按逆序排列,即将链头当做链尾,链尾当做链头。

(此题目选做)

三、源程序清单

1.#include

structDate

{intyear;

intmonth;

intday;

}date;

intmain()

{

inti,days;

intday_tab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};

printf("请输入年月日:

");

scanf("%d%d%d",&date.year,&date.month,&date.day);

days=0;

for(i=1;i

days=days+day_tab[i];

days=days+date.day;

if((date.year%4==0&&date.year%100!

=0||date.year%400==0)&&date.month>=3)

days=days+1;

printf("%d月%d日在%d年中是第%d天\n",date.month,date.day,date.year,days);

return0;

}

四、运行结果截图

实验九文件操作及应用

一、目的要求

1掌握文件、文件指针,以及缓冲文件系统的概念;

2学会使用文件打开、关闭、文件读和写等操作。

二、实验内容

1对std文件中的数据进行输入,并按平均分排序,且存入新文件sort中。

*实验十预处理命令、位运算

一、目的要求

1掌握按位运算的概念和方法,学会使用位运算;

2学会通过运算实现对某些位和运算。

二、实验内容

1编写一个函数getbits,从一个16位的单元中取出某几位。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2