第一篇:C高级语言程序设计实验内容
实验一 C语言的运行环境和基础知识
一、实验目的
1.掌握c程序设计编程环境visual c++,掌握运行一个c程序设计的基本步骤,包括编辑、编译、连接和运行。
2.熟练掌握Visual C++ 6.0环境运行的C程序上机步骤 3.数据类型、常量和变量的使用 4.表达式及运算符的应用 5.C程序的调试。
二、实验内容和源程序清单、测试数据、结果。
1、最简单的C程序。(要求文件名:1_1.c)#include
printf(“Hello world!n”);return 0;}
2、一个具有致命错误的程序,请修改。(要求文件名:1_2.c)#include
printf(“i=%dn”,i);
return 0;}
3、一个具有警告语法错的程序。(要求文件名:1_3.c)#include
s=i+j;printf(“s=%dn”,s);return 0;}
4、写出一个程序测试整型、字符型数据表示,并输出以验证是否正确。(要求文件名:1_4.c)#include
int x=010,y=10,z=0x10;
/* 整型数据表示 */ char c1='M',c2='x4d',c3='115',c4=77,c;
/* 字符型数据表示 */
/* 整型数据的输出 */ printf(“x=%o,y=%d,z=%xn”,x,y,z);
/* 数据以原进制输出,注意是否有前导0或0x */ printf(“x=%d,y=%d,z=%dn”,x,y,z);
/* 数据以10进制输出,换算到10进制,结果对吗? */ /* 字符型数据的输出 */ printf(“c1=%c,c2=%x,c3=%o,c4=%dn”,c1,c2,c3,c4);
/* 数据以原进制输出,注意是否有前导0或0x ?*/ printf(“c1=%c,c2=%c,c3=%c,c4=%cn”,c1,c2,c3,c4);
/* 结果都是什么字符?,也就是说字符可以自由的表示成几种形式? */ printf(“c1=%d,c2=%d,c3=%d,c4=%dn”,c1,c2,c3,c4);
/* 看看这些字符的10进制ASCII码,哦,ASCII码一样,同一种字符 */
/* 字符型数据参与算术运算 */ c=c1+32;
/* 字符怎么参加了数学运算,哦,是字符对应的ASCII码-整数 /* 参与数学运算;结果还是一个整数-另外一个字符的ASCII码 */ printf(“c=%c,c=%dn”,c,c);
/* 看看这个字符是什么?哇,'M'+32='m'了,看看ASCII码表,原来如此!*/ return 0;} 参考结果: x=10,y=10,z=10 x=8,y=10,z=16 c1=M,c2=4d,c3=115,c4=77 c1=M,c2=M,c3=M,c4=M c1=77,c2=77,c3=77,c4=77 c=m,c=109
三、实验报告要求
将题目:2和4的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。2
实验二
顺序结构程序设计
一、实验目的:
1.掌握顺序结构程序设计 2.掌握赋值语句的用法
3.熟练地进行数据输入和输出
二、实验内容和源程序清单、测试数据、结果。
1、已知:a=2,b=3,x=3.9,y=2.3(a,b整型,x,y浮点),计算算术表达式(float)(a+b)/2+(int)x%(int)y的值。试编程上机验证。(要求文件名:2_1.c)提示编程要点:
(1)先判断结果值类型,可设置一个此类型的变量用于记录表达式结果,本例用r存放结果;(2)程序先给几个变量赋初值,然后将表达式赋值给变量r;(3)最后打印变量r的值就是表达式的值。参考程序:
#include
int a=2,b=3;float x=3.9,y=2.3;
float r;
r=(float)(a+b)/2+(int)x%(int)y;
printf(“%fn”,r);return 0;} 参考结果: 3.500000 思考:为什么是这个结果?
2、分析下面程序结果,并上机验证。(要求文件名:2_2.c)#include
int i,j,m,n;
i=8;
j=10;
m=++i;
n=j++;
printf(“i=%d, j=%d, m=%d, n=%dn”,i,j,m,n);
return 0;} 参考结果:
i=9, j=11, m=9, n=10
3、用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=’A’,c2=’a’。从键盘如何输入?(要求文件名:2_3.c)#include
4、编程序,用getchar函数读入两个字符给c1、c2,然后分别用 putchar函数和 printf函数输出这两个字符。(要求文件名:2_4.c)参考程序:
#include
三、实验报告要求
将题目:1和3的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。
实验三
选择结构程序设计
一、实验目的
1.2.3.4.了解C语句表示逻辑量的方法(以0代表“假”以1代表“真”);
学会正确使用逻辑运算符和逻辑表达式;
熟练掌握if语句和switch语句;
熟练掌握switch语句中break语句的作用。
二、实验内容和源程序清单、测试数据、结果。
(1)掌握各种格式转换符的正确使用方法,输出结果。(要求文件名:3_1.c)#include
(2)1.从键盘任意输入一个年号,判断它是否是闰年。若是闰年,输出“Yes”,否则输出“No”。已知符合下列条件之一者是闰年:(1)能被4整除,但不能被100整除;(2)能被400整除。(要求文件名:3_2.c)参考程序:
#include
int year, flag;printf(“Enter year:”);scanf(“%d”, &year);if(year%4==0&&year%100!=0 || year%400==0)
{
flag = 1;
} else
{
flag = 0;
} if(flag)
{
printf(“Yesn”);
} else
{
printf(“Non”);} return 0;}(3)编程序,并给出程序的运行结果,注意思考case中break的用法以及为什么是这样的结果?(要求文件名:3_3.c)参考程序:
#include
int x=2,y=1,a=1,b=2;switch(x){ case 2:
switch(y)
{
case 1:a++;
case 2:b++;break;
}
case 3:a++;b++;break;} printf(“%d %dn”,a,b);return 0;}(4)编程序:输入4个整数,要求按由小到大的顺序输出。(要求文件名:3_4.c)参考程序:
#include
int t,a,b,c,d;scanf(“%d,%d,%d,%d”,&a,&b,&c,&d);printf(“a=%d,b=%d,c=%d,d=%dn”,a,b,c,d);if(a>b){t=a;a=b;b=t;} if(a>c){t=a;a=c;c=t;} if(a>d){t=a;a=d;d=t;} if(b>c){t=b;b=c;c=t;} if(b>d){t=b;b=d;d=t;} if(c>d){t=c;c=d;d=t;} printf(“%d,%d,%d,%dn”,a,b,c,d);return 0;}
三、实验报告要求
将题目:2和3的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。
实验四 循环结构程序设计
一、实验目的
1.2.3.4.5.熟练使用while、for语句实现循环程序设计
理解循环条件和循环体,以及while、for语句的相同及不同之处 掌握嵌套循环程序设计
熟练掌握下拉菜单Debug的程序调试方法 掌握break和continue的用法
二、实验内容和源程序清单、测试数据、结果。
(1)输入两个正整数m和n,求它们的最大公约数和最小公倍数。(要求文件名:4_1.c)参考程序:
#include
m=x;else
m=y;for(i=1;i<=m;i++){
if((x%i==0)&&(y%i==0))
max=i;} printf(“%dn”,max);printf(“%dn”,x*y/max);return 0;}(2)从键盘输入一个 int 类型的正整数,输出它的所有因子。如输入6,输出1,2,3;输入20,输出1,2,4,5,10。(要求文件名:4_2.c)参考程序:
#include printf(“%dn”,i);} return 0;}(3)输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。(要求文件名:4_3.c)参考程序: #include if(c>='a'&&c<='z'||c>='A'&&c<='Z') letter++; else if(c>='0'&&c<='9') digit++; else if(c==' ') space++; else other++;} printf(“%d,%d,%d,%dn”,letter,digit,space,other);return 0;}(4)编程计算111111的值。(要求文件名:4_4.c)23499100参考程序: #include int sign = 1;double sum = 1;double deno = 2;double term = 1;while(deno<=100){ sign =(-1)*sign; term = sign*(1/deno); sum = sum+term; deno++;} printf(“%lfn”,sum);return 0;} 三、实验报告要求 将题目:3和4的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。 实验五 数组 一、实验目的 1.掌握一维、二维数组的定义、引用、应用 2.掌握字符数组的定义、引用、应用 3.掌握字符串处理函数 二、实验内容和源程序清单、测试数据、结果。 (1)给出下面程序的结果,思考为什么?(要求文件名:5_1.c)#include char a[]=“Chinaren”,b[]=“Tiananmen”;char *p1,*p2; int k=0;p1=a; p2=b;for(k=0;k<10;k++) if(*(p1+k)==*(p2+k)) printf(“%c”,*(p1+k));printf(“n”);return 0;}(2)有一个3×4的矩阵,要求输出其中值最大的元素的值,以及它的行号和列号。(要求文件名:5_2.c)参考程序: #define M 3 #define N 4 #include int a[M][N]={{123,94,-10,218},{3,9,10,-83},{45,16,44,-99}}; max=a[0][0]; for(i=0;i for(j=0;j if(a[i][j]>max) { max= a[i][j]; r=i; c=j; } printf(“max=%d , row =%d , colum=%d n”,max , r, c); return 0;}(3)编程序用于读入10个字符串,然后找出最大的字符串并打印。(要求文件名:5_3.c)参考程序: #include char str[10][80],maxstring[80]; int i;printf(“Enter ten strings:n”);for(i=0;i<10;i++) { scanf(“%s”, str[i]);} strcpy(maxstring, str[0]); for(i=1;i<10;i++) { if(strcmp(str[i],maxstring)>0) { strcpy(maxstring,str[i]); } } printf(“The max string is:%sn”,maxstring);}(4)给出下面程序的运行结果,思考为什么?(要求文件名:5_4.c)#include int a[4][4]={{1,2,-3,-4},{0,-12,-13,14},{-21,23,0,-24},{-31,32,-33,0}};int i,j,s=0;for(i=0;i<4;i++){ for(j=0;j<4;j++) { if(a[i][j]<0)continue; if(a[i][j]==0)break; s+=a[i][j]; } } printf(“%dn”,s);return 0;}(5)测试二维数组的各个地址值,结果是什么,思考原因。(要求文件名:5_5.c)#include int a[M][N];printf(“%xn”,a);printf(“%xn”,a[0]);for(int i=0;i printf(“%x,”,&a[i][j]); return 0;} 三、实验报告要求 将题目:2和3的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。 实验六 函数 一、实验目的 1.掌握C语言函数的定义方法、函数的声明及函数的调用方法。 2.了解主调函数和被调函数之间的参数传递方式。 二、实验内容和源程序清单、测试数据、结果。 (1)给出下面程序的结果,思考为什么?(要求文件名:6_1.c)#include #include printf(“%d is prime!”,number);else printf(“%d is not!”,number);return 0;} int prime(int number)/*此函数用于判别素数*/ { int flag=1,n;for(n=2;n if(number%n==0) flag=0;return(flag);}(3)求两个整数的最大公约数和最小公倍数。写一个函数求最大公约数。(要求文件名:6_3.c)参考程序: #include max=i;} return(max);}(4)写一函数,输入一个十六进制数,输出相应的十进制数。(要求文件名:6_4.c)参考程序: #include if(shu[i]>=48&&shu[i]<=57) sum=sum+(shu[i]-48)*pow(16,k-i); else if(shu[i]>=65&&shu[i]<=70) sum=sum+(shu[i]-55)*pow(16,k-i); else if(shu[i]>=97&&shu[i]<=102) sum=sum+(shu[i]-87)*pow(16,k-i); else { printf(“error!n”); break; } return sum;} int main(){ char str[100];long s;gets(str);s=change(str);if(!s) printf(“The number is not oxn”);else printf(“change:%ldn”,s);return 0;} 三、实验报告要求 将题目:3和4的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。 实验七 指针 一、实验目的 1.掌握指针变量的定义与引用。 2.熟练使用函数指针、数组指针、字符串指针编写应用程序。 二、实验内容和源程序清单、测试数据、结果。 (1)输入三个整数,按由小到大的顺序输出,然后将程序改为:输入三个字符串,按由小到大顺序输出。参考程序:(输入三个整数,按由小到大的顺序输出)(要求文件名:7_0.c)#include #include int x,a[100],*p,i;p=a;scanf(“%d”,&x);for(i=0;i scanf(“%d”,p++);p=a;printf(“n”);maopao(p,x);printf(“the sorted numbers:n”);p=a;for(i=0;i printf(“%dt”,*p); return 0;} void maopao(int *p,int x){ int i,j,temp;for(i=0;i for(j=0;j if(*(p+j)>*(p+j+1)) { temp=*(p+j); *(p+j)=*(p+j+1); *(p+j+1)=temp; } }(3)利用函数和指针将给定字母字符串的第一个字母变成大写字母,其它字母变成小写字母。在main函数中接收字符串的输入,改变后的字符串的输出也在main函数中实现。(要求文件名:7_3.c)参考程序: #include *s-=32;s++; } for(i=0;i *s+=32; 三、实验报告要求 将题目2和3的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。 实验八 结构体和共用体 一、实验目的 1.掌握结构体类型和结构体变量的定义。 2.掌握结构类型变量的定义和使用。 3.掌握链表的概念,初步学会对链表进行操作。 二、实验内容和源程序清单、测试数据、结果。 (1)给出下面程序的运行结果,思考为什么?(要求文件名:8_1.c)#include char num[10]; float score[3];}; int main(){ struct STU s[3]={{“1122301”,90,95,85}, {“1122302”,80,90,75}, {“1122303”,98,92,85}}, *p=s; int i; float sum = 0; for(i=0;i<3;i++){ sum = sum + p->score[i]; } printf(“%6.2fn”,sum); return 0;}(2)有10个学生,每个学生的数据包括学号,姓名,三门课的成绩,从键盘输入十个学生的数据,要求打印出每个学生的平均成绩,以及最高分的学生的数据(包括学号,姓名,三门课的成绩,平均分数)。(要求文件名:8_2.c)#include char num[6]; char name[8]; float score[3]; float avr;} stu[N]; int main(){ int i,j,maxi; float sum,max,average; for(i=0;i { printf(“input scores of student %d:n”,i+1); printf(“NO.:”); scanf(“%s”,stu[i].num); printf(“name:”); scanf(“%s”,stu[i].name); for(j=0;j<3;j++) { printf(“score %d:”,j+1); scanf(“%f”,&stu[i].score[j]); } } average=0; max=0; maxi=0; for(i=0;i { sum=0; for(j=0;j<3;j++) sum+=stu[i].score[j]; stu[i].avr=sum/3.0; average+=stu[i].avr; if(sum>max) { max=sum; maxi=i; } } average/=N; printf(“ NO.name score1 score2 score3 averagen”); for(i=0;i for(j=0;j<3;j++) printf(“%9.2f”,stu[i].score[j]); printf(“ %8.2fn”,stu[i].avr); } printf(“average=%5.2fn”,average); printf(“The highest score is : student %s,%sn”,stu[maxi].num,stu[maxi].name);printf(“his scores are:%6.2f,%6.2f,%6.2f,average:%5.2f.n”,stu[maxi].score[0],stu[maxi].score[1],stu[maxi].score[2],stu[maxi].avr);return 0;}(3)建立一个链表,每个结点包括:学号,姓名,性别,年龄。输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,则将此结点删去。(要求文件名:8_3.c) #include char num[6];char name[8];char sex[2];int age;struct student *next;} stu[10]; int main(){ struct student *p,*pt,*head;int i,length,iage,flag=1;int find=0; //找到待删除元素 find=1,否则find=0 while(flag==1){ printf(“input length of list(<10):”); scanf(“%d”,&length); if(length<10) flag=0;} //建立链表 for(i=0;i p=(struct student *)malloc(LEN); if(i==0) head=pt=p; else pt->next=p; pt=p; printf(“NO.:”); scanf(“%s”,p->num); printf(“name:”); scanf(“%s”,p->name); printf(“sex:”); scanf(“%s”,p->sex); printf(“age:”); scanf(“%d”,&p->age); } p->next=NULL; p=head;printf(“n NO.name sex agen”); //显示 while(p!=NULL){ printf(“%4s%8s%6s%6dn”,p->num,p->name,p->sex,p->age); p=p->next;} // 删除 printf(“input age:”); //输入待删年龄 scanf(“%d”,&iage);pt=head;p=pt; if(pt->age==iage) //链头是待删元素 { p=pt->next; head=pt=p; find=1; } else //链头不是待删元素 pt=pt->next; while(pt!=NULL){ if(pt->age==iage) { p->next=pt->next; find=1; } else // 中间结点不是待删元素 p=pt; pt=pt->next; } if(!find) printf(“ not found %d.”,iage); p=head; printf(“n NO.name sex agen”);//显示结果 while(p!=NULL){ printf(“%4s%8s”,p->num,p->name); printf(“%6s%6dn”,p->sex,p->age); p=p->next; } return 0;} 三、实验报告要求 将题目3的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。 实验九 文件操作 一、实验目的 1.掌握文件和文件指针的概念以及文件的定义方法。 2.了解文件打开和关闭的概念和方法。 3.掌握有关文件的函数。 二、实验内容和源程序清单、测试数据、结果。 (1)对data.dat文件写入100条记录。(要求文件名:8_1.c) #include int i; float x; fp=fopen(“c:data.dat”,“w”); for(i=1;i<=100;i++) { scanf(“%f”,&x); fprintf(fp,“%fn”,x); } fclose(fp); return 0;} (2)设有一文件cj.dat存放了50个人的成绩(英语、计算机、数学),存放格式为:每人一行,成绩间由逗号分隔。计算三门课平均成绩,统计个人平均成绩大于或等于90分的学生人数。(要求文件名:8_2.c) #include int num=0; float x , y , z , s1 , s2 , s3; fp=fopen(“c:cj.dat”,“r”); while(!feof(fp)) { fscanf(fp,“%f,%f,%f”,&x,&y,&z); s1=s1+x; s2=s2+y; s3=s3+z; if((x+y+z)/3>=90) num=num+1; } printf(“分数高于90的人数为:%dn”,num); fclose(fp); return 0;} (3)统计上题cj.dat文件中每个学生的总成绩,并将原有数据和计算出的总分数存放在磁盘文件“stud”中。(要求文件名:8_3.c) #include “stdio.h” int main(){ FILE *fp1,*fp2; float x,y,z; fp1=fopen(“c:cj.dat”,“r”); fp2=fopen(“c:stud”,“w”); } while(!feof(fp1)){ fscanf(fp1,“%f,%f,%f”,&x,&y,&z); printf(“%f,%f,%f,%fn”,x,y,z,x+y+z); fprintf(fp2,“%f,%f,%f,%fn”,x,y,z,x+y+z);} fclose(fp1);fclose(fp2);return 0; 三、实验报告要求 将题目1、2和3的源程序、运行结果,以及实验中遇到的问题和解决问题的方法,以及实验过程中的心得体会,写在实验报告上。 《高级语言程序设计C》实验教学大纲 课程编号:1021742 总学时:56学时 适用专业:非计算机理工科各专业 总实验学时:24 实验次数: 12 次 应开实验个数:13 已开实验个数:13 实验开出率:100% 实验一 熟悉C 程序的运行环境 一、学时:2 二、实验类型:演示、验证 三、实验目的和主要内容: 1.了解计算机系统对高级语言的基本操作方法 2.熟悉和了解Turbo C 系统软件的使用和操作 3.能进行简单的C语言程序录入、调试、编译和运行 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.熟悉开机操作,使用单机或计算机上网。 2.进入 Turbo C 系统。 3.熟悉Turbo C 系统各菜单命令的使用和操作 4.模仿简单的源程序,编写自己的小程序,并能运行这些程序。 5.录入、调试、编译和运行C语言程序 实验二 数据类型、表达式及输入输出函数实验 一、学时:2 二、实验类型:验证、设计 三、实验目的和主要内容: 1. 熟悉和了解C语言的数据类型 2. 使用C语言的有关算术运算符,以及包含这些运算符的表达式 3.进行简单的C语言输入输出函数的使用,格式控制符的涵意,简单C程序的设计、调 试、编译和运行 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.进入 Turbo C 系统。 2.编写简单的有输入输出的C程序,并进行该程序的运行、调试、编译。 3.编写一个输入三条边,计算三角形面积的程序。 4.编写程序,计算a+b×c÷d-d3,其中:a,b为整型变量,c,d为实型变量。 5.编写一个有关数据计算程序,验证运算符及表达式的结果。 6.可从布置的作业中,再任选一编程题,进行上机。 实验三 顺序程序结构程序设计 一、学时:2 二、实验类型:验证、设计 三、实验目的和主要内容: 1.进一步掌握C程序的编辑、编译、连接和运行的过程。2.熟悉顺序结构的程序设计方法。3.熟练使用C的各种表达式。 4.熟练掌握输入、输出函数的使用。 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.输入x,y,编写程序求z=x+|y|的值。实验步骤与要求: (1)程序中用scanf函数输入x和y的值,请分析以下两个语句 scanf(“%f%f”,x,y);scanf(“%f%f”,&x,&y); 哪一个是正确的,分别运行之,分析程序运行结果。 (2)如果scanf函数改为scanf(“%f,%f”,&x,&y);应该怎样输入数据。2.编写输入三角形的三边长a、b、c,求三角形面积area的程序。实验步骤与要求: (1)输入前要加提示语句。 (2)输出结果前要有必要的文字说明。(3)输入一组数据3,4,5,观察运算结果。 (4)输入另外一组数据3,4,8,观察运算结果,分析这个运算结果是否有效。 实验四 分支控制语句实验 一、学时:2 二、实验类型:验证、设计 三、实验目的和主要内容: 1.熟悉和了解C语言系统分支语句的使用和操作 2.进行C语言分支控制语句的设计、调试、编译和运行 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.进入 Turbo C 系统。 2.进行分支控制源程序的设计,并进行该程序的运行、调试、编译。 3.编辑一个分支控制程序,求:任意输入数(n>2)是否为素数。 4.编辑一个分支控制程序,求:任意输入3个数,求其最大数。 实验五 循环语句实验 一、学时:2 二、实验类型:验证、设计 三、实验目的和主要内容: 1.熟悉和了解C语言循环语句的使用和操作 2.进行C语言循环语句的设计、调试、编译和运行 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.进入 Turbo C 系统。 2.进行循环源程序的设计,并进行该程序的运行、调试、编译。 3.编辑一个循环程序,求:1到100的和及平方和。 4.编辑一个循环程序,求:任意输入10个数,求其最大数。 5.可从布置的作业中,再任选一编程题,进行上机。 实验六 数组实验 一、学时:2 二、实验类型:验证、设计 三、实验目的和主要内容: 1.熟悉和了解C语言数组程序的设计方法 2.学会使用C语言数组进行程序设计 3.进行C语言数组语句的设计、调试、编译和运行 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.进入 Turbo C 系统。 2.进行数组的定义和使用方法,即:一维和二维数组的应用。 3.进行数组语句源程序的设计,并进行该程序的运行、调试、编译。 4.编辑数组应用程序: (1)任意输入20个数在一维数组a中,求20个数的平均值。 (2)定义2个二维数组A[2][3]、B[2][3],分别对这2个数组输入数据,求A+B和A-B的值。 (3)用字符数组存储任意输入10字符,求其最大字符。 (4)编辑一个有5个学生,考 3门功课。求出每一个学生的总分及平均分,统计平均成绩低于 60 分的学生人数。 5.可从布置的作业中,再任选一编程题,进行上机。 实验七 有关数组的程序设计 一、学时:2 二、实验类型:验证、设计 三、实验目的和主要内容: 1.掌握有关数组和字符串的程序设计方法。 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 已知一组数据如下:6,3,42,23,35,71,98,67,56,38。编写程序,把它们按 从小到大的次序排列起来。求2行3列矩阵A 的转置矩阵。 实验八 函数实验 一、学时:2 二、实验类型:验证、设计 三、实验目的和主要内容: 1.熟悉和了解C语言函数程序的设计方法。 2.学会使用C语言函数的定义及调用,并进行程序编制。 3.进行C语言函数语句的设计、调试、编译和运行 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.进入 Turbo C 系统。 2.进行函数的定义及调用。 3.进行函数语句源程序的设计,并进行该程序的运行、调试、编译。 (1)任意输入一个数n,用两个子函数实现1+2+3„n以及n!,在主函数中输出该结果。 (2)在主函数中定义二维数组A[3][4]、B[4],用子函数对数组A[3][4]每一行求和,其值放在数组B[4]中,在主函数中输出该值。 (3)用字符数组存储任意输入的10字符,在子函数中把该字符数组的小写字母转换成大写字母。 4.可从布置的作业中,再任选一编程题,进行上机。 实验九 常用指针实验 (一)一、学时:2 二、实验类型:验证、设计 三、实验目的和主要内容: 1.熟悉和了解C语言指针一般设计方法 2.学会使用C语言指针进行程序设计 3.进行简单C语言指针语句的设计、调试、编译和运行 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.进入 Turbo C 系统。 2.进行C语言指针语句的定义和使用方法。 3.进行C语言指针语句源程序的设计,并进行该程序的运行、调试、编译。 4.编辑一个找出字串 str1中 str2出现的位置,用指针编程实现。 5.可从布置的作业中,再任选一编程题,进行上机。 实验十 复杂指针实验 (二)一、学时:2 二、实验类型:验证、设计 三、实验目的和主要内容: 1.进一步熟悉和了解C语言指针语句设计方法 2.进行C语言中的指针与函数、指针数组、多级指针语句的设计、调试、编译和运行 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.进入 Turbo C 系统。 2.进行C语言指针与函数、指针数组、多级指针语句的定义和使用方法。 3.进行C语言该指针语句源程序的设计,并进行该程序的运行、调试、编译。 4.编辑一个在主程序里输入十个不等长的字串,调用自编的函数把它们按升序排列,用指针编程实现。 5.可从布置的作业中,再任选一题编程题,进行上机。 实验十一 结构类型实验 一、学时:2 二、实验类型:验证、设计 三、实验目的和主要内容: 1.熟悉和了解C语言结构、联合数据的定义及设计方法 2.学会使用C语言结构、联合数据类型进行程序设计 3.进行C语言结构、联合语句的设计、调试、编译和运行 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.进入 Turbo C 系统。 2.进行C语言结构、联合数据类型的定义和使用。 3.进行C语言结构、联合数据类型源程序的设计,并进行该程序的运行、调试、编译。 4.编辑一个能处理学生综合信息的程序(包括:学号、姓名、班级、语文成绩、数学成绩、英语成绩等)。 实验十二 有关结构的程序设计 一、学时:2(课后完成或选作) 二、实验类型:验证、设计 三、实验目的和主要内容: 1.掌握结构体类型和结构体变量的定义。2.掌握结构类型变量的定义和使用; 3.掌握链表的概念,初步学会对链表进行操作; 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.有五个学生,每个学生的数据包括学号,姓名,三门课的成绩,从键盘输入五个学生的数据,要求打印出每个学生的平均成绩,以及最高分的学生的数据(包括学号,姓名,三门课的成绩,平均分数)。实验步骤与要求: 用一个函数输入五个学生的数据;用一个函数求总平均分;用函数找出最高分学生数据,总平均分和最高分的学生的数据都在主函数中输出。 2.三个人围成一圈,从第一个人开始顺序报号1,2,3。凡报到“3”者退出圈子,找出最后流在圈子中的人原来的序号。 3.建立一个链表,每个结点包括:学号,姓名,性别,年龄。输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,则将此结点删去。 实验十三 文件实验 一、学时:2 二、实验类型:验证、设计 三、实验目的和主要内容: 1.熟悉和了解C语言文件系统的组成及设计方法。 2.学会使用C语言文件系统进行程序设计 3.进行C语言文件语句的设计、调试、编译和运行 四、需用仪器、设备: 1.硬件环境 PC-486以上微机 32M以上的内存 VGA显卡 2.软件环境 西文DOS操作系统(可使用UCDOS汉字操作系统)或Windows操作系统 Turbo C(2.0版) 五、实验方法及步骤: 1.进入 Turbo C 系统。 2.进行C语言文件系统类型的定义和使用。 3.进行C语言文件系统类型源程序的设计,并进行该程序的运行、调试、编译。 4.编辑程序。 (1)用数组存储10个数据,并存储在“date.dat”文件中 (2)对存储在“date.dat”文件中的数据读入到一个数组中,求出总和及最大值,并把它存储在“dsum.dat”文件中 信息技术系《高级语言程序设计》实验教学大纲 一、教材名称:< 二、课程总学时:108学时 [理论: 72 学时;实验与上机:36学时] 三、适用专业和开课学期:软件技术专业,第2学期。 四、实验的目的与任务: 《C程序设计》是一门实践性很强的课程。通过实验使学生加深对课堂讲授的概念、语法、算法、编程技术的理解;熟悉C程序设计的开发环境;掌握程序设计和调试的基本技能。并通过实践激发学生进一步学习的积极性,培养学生的学习兴趣和创新思维。通过8个实验,使学生经过一定数量的上机训练,了解和掌握C程序设计的环境、程序的数据表示、程序的执行流程控制、程序的整体结构等C程序设计的基本概念和应用技术。 五、主要仪器设备及台(套)数 安装Windowsxp,TC2.0等软件的计算机,每生一台。 六、主要实验教材(指导书)及参考用书: 谭浩强主编,《C程序设计题解与上机指导》,清华大学出版社。 七、成绩考核方式及评分标准 实验占课程总课时1/3,每项实验按该实验说明要求规定的评分标准积分,学期末合计的实验成绩占课程总成绩的18%。 八、实验开出率:100% 九、实验项目与要求 实验一:C程序的运行环境和运行一个C程序的方法(2学时) 实验性质:验证性实验 一、实验目的 1.了解所用的计算机系统的基本操作方法,学会独立使用该系统。2.了解在该系统上如何编辑、编译、连接和运行一个C程序。3.通过运行简单的C程序,初步了解C源程序的特点。 二、实验内容 1.调用编辑程序,输入教材第一章例1.1程序,并进行编译和运行。应了解所用的系统是用什么命令进行编译和连接运行的。编译和连接后所得到的目标程序的后缀是什么形式的? 2.输入并运行教材第一章中例1.2。 3.输入并运行教材第一章中例1.3,了解如何在运行时向程序变量输入数据。 实验二 数据类型、运算符和表达式(2学时) 实验性质:验证性实验 一、实验目的 1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。 2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。 3.进一步熟悉C程序的编辑、编译、连接和运行的过程。 二、实验内容 1.输入并运行教材第三章例3.6.即: #include printf(“%c %cn”,c1,c2); printf(“%d %dn”,c1,c2); } 在此基础上 ①将第二行改为: int c1,c2;再使之运行,分析结果。②再将第三行、第四行改为: c1=300;c2=400;再使之运行,分析其运行结果。 2.输入并运行教材第三章习题3.6,在上机前先用人工分析程序写出应得结果,上机后将二者对照。 3.输入并运行习题3.10。即: #include printf(“%d,%d,%d,%d”,i,j, i++,j++);⑤程序改为: main(){int i,j,m=0,n=0;;i=8;j=10;m+=i++;n-=--j;printf(“i=%d,j=%d,m=%d,n=%d”,i,j,m,n);} 实验三 最简单的C程序设计(2学时) 实验性质:验证性实验 一、实验目的 1.掌握C语言中使用最多的一种语句—赋值语句的使用。2.掌握数据的输入输出的方法,能正确使用各种格式转换符。 二、实验内容 1.输入并运行以下程序: #include void main(){int a,b; float d,e; char c1,c2; double f,g; long m,n; unsigned int p,q; a=61;b=62; c1=’a’;c2=’b’; d=3.56;e=-6.87; f=3157.890121;g=0.123456789; m=50000;n=-60000; p=32768;q=40000; printf(“a=%d,b=%dn c1=%c,c2=%cnd=%6.2f,e=%6.2fn”,a,b,c1,c2,d,e); printf(“f=%15.6f,g=%15.12fnm=%ld,n=%ldnp=%u,q=%un”,f,g,m,m,p,q); } 在此基础上,做以下改动: ① 将程序第8-13行改为: a=61;b=62; c1=a;c2=b; f=3157.890121;g=0.123456789; d=f;e=g; p=a=m=50000;q=b=n=-60000; 运行程序,分析结果。 ② 在①的基础上将printf语句改为: printf(“a=%d,b=%dn c1=%c,c2=%cnd=%15.6f,e=%15.12fn”,a,b,c1,c2,d,e); printf(“f=%f,g=%fn m=%ld,n=%ldn p=%d,q=%dn”,f,g,m,n,p,q); 运行程序。 2.编写程序,用getchar函数读入两个字符c1、c2,然后分别用putchar函数和printf函数输出这两个字符。 上机运行程序,比较用printf和putchar函数输出字符的特点。 实验四 选择结构程序设计(2学时) 实验性质:设计性实验 一、实验目的 1.了解C语言表示逻辑量的方法(以0代表“假”,以1代表“真”); 2.学会正确使用逻辑运算符和逻辑表达式; 3.熟练掌握if语句和switch语句。 二、实验内容 先编程序,解决以下问题,然后上机调试运行程序。1.有一个函数 xy2x13x11x11x10 x10用scanf函数输入x的值(分别为x<1、1~ 10、≥10三种情况),求y值。2.给出一个百分制成绩,要求输出成绩等级‘A’,‘B’,‘C’,‘D’,‘E’。90分以上为‘A’,80~89分为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为‘E’。 实验五 循环控制(4学时) 实验性质:设计性实验 一、实验目的 1.熟悉用while语句,do-while语句和for语句实现循环的方法。2.掌握在程序设计中用循环的方法实现各种算法(如穷举、迭代、递推等)。 二、实验内容 编程序并上机调试运行。 1.输入两个正整数,求其中最大公约数和最小公倍数。2.用牛顿迭代法求方程2x3-4x2+3x-6=0在1.5附近的根。 实验六 数组(4学时) 实验性质:设计性实验 一、实验目的 1.掌握一维数组和二维数组的定义、赋值和输入输出的方法; 2.掌握字符数组和字符串函数的使用。3.掌握与数组有关的算法(特别是排序算法)。 二、实验内容 编程序并上机调试运行。 1.用选择法对10个整数排序。10个整数用scanf函数输入。2.将两个字符串连接起来,不要用strcat函数。实验七 函数(4学时) 实验性质:设计性实验 一、实验目的 1.掌握定义函数的方法; 2.掌握函数实参与形参的对应关系,以及“值传递”的方式; 3.掌握函数的嵌套调用和递归调用的方法; 4.掌握全局变量和局部变量,动态变量和静态变量的概念和使用方法。 二、实验内容 编程序并上机调试运行。 1.写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的信息。2.求两个整数的最大公约数和最小公倍数,用一个函数求最大公约数。用另一函数根据求出的最大公约数求最小公倍数。 (1)用全局变量的方法。将两个整数的最大公约数、最小公倍数都设为全局变量。 (2)不用全局变量,两个整数在主函数中输入,并传送给函数1,求出的最大公约数返回主函数,然后再与两个整数一起作为实参传递给函数2,以求出最小公倍数,返回到主函数输出最大公约数和最小公倍数。 实验八 预处理命令(2学时) 实验性质:设计性实验 一、实验目的 1.掌握宏定义的方法; 2.掌握文件包含处理方法; 3.掌握条件编译的方法。 二、实验内容 编程序并上机调试运行。 1.定义一个带参数的宏,使两个参数的值互换。在主函数中输入两个数作为使用宏的实参,输出已交换后的两个值。 说明:在程序主函数使用宏时只能用两个实参,如SWAP(a,b),不能用三个参数。2.用条件编译方法实现以下功能: 输入一行电报文字,可以任选两种输出,一为原文输出;一为将字母变成其下字母(如‘a’变成‘b’,„,‘z’变成‘a’。其它字符不变)。用#define命令来控制是否要译成密码。例如: #define CHANGE 1 则输出密码。若 #define CHANGE 0 则不译成密码,按原码输出。用条件编译方法来处理。 实验九 指针(4学时) 实验性质:设计性实验 一、实验目的 1.掌握指针的概念,会定义和使用指针变量; 2.学会使用数组的指针和指向数组的指针变量; 3.学会使用字符串的指针和指向字符串的指针变量; 4.学会使用指向函数的指针变量; 二、实验内容 编程序并上机调试运行程序(都要求用指针处理)。1.输入三个整数,按由小到大的顺序输出。 2.将一个3*3的矩阵转置,用一函数实现之。在主函数中用scanf函数输入以下矩阵元素: 1 7133915511 19将数组名作为函数实参。函数调用后在主函数中输出已转置的矩阵。3.用一个函数实现两个字符串的比较,即自己写一个strcmp函数: strcmp(s1,s2)如果s1=s2,则函数返回值为0;如果s1≠s2,返回它们二者第一个不同字符的ASCII码差值(如“BOY”与“BAD”,第二个字母不同,“O”与“A”之差为79-65=14);如果s1>s2,则输出正值;如s1 两个字符串s1,s2由main函数输入,strcmp函数的返回值也在main函数输出。 实验十 结构体和共用体(4学时) 实验性质:设计性实验 一、实验目的 1.掌握结构体类型变量的定义和使用; 2.掌握结构体类型数组的概念和应用; 3.掌握共用体的概念与使用。 二、实验内容 编程序,然后上机调试运行。 1.有5个学生,每个学生的数据包括学号、姓名、三门课的成绩,从键盘输入5个学生数据,要求打印出三门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、三门课的成绩、平均分数)。 要求用一个input函数输入5个学生数据;用一个average函数求总平均分;用max函数找出最高分学生数据;总平均分和最高分的学生的数据都在主函数中输出。 2.输入和运行以下程序: #include union data {int i[2]; float a; long b; char c[4]; }; void main(){union data u; scanf(“%d,%d”,&u.i[0],&u.i[1]); printf(“i[0]=%d,i[1]=%dna=%fnb=%ldnc[0]=%c,c[1]=%c,c[2]=%c,c[3]=%cn”,u.i[0],u.i[1],u.a,u.b,u.c[0],u.c[1],u.c[2],u.c[3]);} 输入两个整数10000、20000给u.i[0]和u.i[1]。分析运行结果。 然后将scanf语句改为: scanf(“%ld”,&u.b); 输入60000给b。分析运行结果。 实验十一 位运算(1学时) 实验性质:设计性实验 一、实验目的 1.掌握位运算的概念和方法,学会使用位运算符; 2.学会通过位运算实现对某些位的操作。 二、实验内容 编写程序,上机调试并运行。 1.设计一个函数,使给出一个数的原码,能得到该数的补码,用八进制形式输入和输出。 实验十二 文件(1学时) 实验性质:设计性实验 一、实验目的 1.掌握文件以及缓冲文件系统、文件指针的概念; 2.学会使用文件打开、关闭、读、写等文件操作函数。3.学会用缓冲文件系统对文件进行简单的操作。 二、实验内容 1.从键盘输入一个字符,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符以“!”结束。实验十三 学生成绩管理(4学时) 实验性质:综合性设计性实验 一、实验目的 1.综合运用C程序设计知识,解决实际问题。 二、实验内容 1.有5个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号、姓名、三门课成绩),计算出平均成绩,将原有数据和计算出的平均分数存放在磁盘文件“stud”中。 2.将上题“stud”文件中的学生数据,按平均分进行排序处理,将已排序的学生数据存入一个新文件“stu-sort”中。 3.将上题已排序的学生成绩文件进行插入处理。插入一个学生的三门课成绩。程序先计算新插入学生的平均成绩,然后将它按成绩高低顺序插入,插入后建立一个新文件。 学生的原有数据为: 91101 Wang 89,98,67.5 91103 Li 60,80,90 91106 Fun 75.5,91.5,99 91110 Ling 100,50,62.5 91113 Yuan 58,68,71 要插入的学生数据为: 91108 Xin 90,95,60 制 订:程世辉 教研室:软件教研室 执笔人:程世辉 审定人: 二00七年八月 高级语言程序设计(VB)实验评分方法及注意事项 1.高级语言程序设计(VB)综合性实验包括预习和实验两部分,相应提交预习报告和实验报告。实验报告成绩以百分制给出。预习报告成绩占实验成绩的20分,实验报告成绩占实验成绩的80分。2.预习报告主要包括: (1)界面设计和属性设置(5分) 包括所需对象的名称、数量、在窗体上的布局、属性名和属性值等。属性设置情况要求用表格进行填写。(2)预编程序代码(15分) 程序流程图不作硬性要求,如有且正确可在5分以内适当加分。预编程序代码必须手写。 3.实验报告主要包括: (1)实验目的(已在实验报告模板中给出)(2)实验内容(已在实验报告模板中给出)(3)实验要求(已在实验报告模板中给出)(4)界面设计和属性设置(5分)(5)源程序代码(60分) (6)调试和运行结果(要求取截图)(5分)(7)实验中存在的问题(5分)(8)体会和思考(5分) 以上内容要求在A4纸上打印。 5.做实验项目之前,要求学生提前预习,做好实验前的准备工作。 6.学生做完实验后,要按实验要求写出实验报告(连同预习报告一并打印左侧装订),交班长并由班长收齐后按学号排好序交给实验指导教师。 《高级语言程序设计》教学大纲(Visual FoxPro) 课程编号:030202 总学时:54学时(含上机24学时) 适用专业:全院管理类所有本、专科专业 一、教 学 内 容 1、数据库基本知识 ①数据库的特点; ②数据库系统分代; ③数据库系统的分类; ④Visual FoxPro文件的主要技术指标; ○5 Visual FoxPro的界面和工作方式 2、数据库的基本操作 ①数据库文件的建立,CREATE、APPEND、LIST、DISPLAY; ② Visual FoxPro的命令工资方式,菜单和命令方式、表达式、数组和常用函数; ③修改数据库文件。MODIFY STRUCTURE、INSERET、DELETE、RECALL、PACK、EDIT、CHANGE、BROWSE、REPLACE、SCATTER、GATHER; ④复制数据库文件。COPY STRUCTURE、COPY TO、数据库的结构文件、成批记录的复制; ⑤磁盘文件的基本操作。COPY FILE、RENAME FILE、DELETE FILE、DIR、TYPE FILE; 3、查询和统计 ①排序和索引sort、index; ②查询命令locate、find、seek、continue、skip; ③数据工作期、视图文件、表的关联、多工作区查询、库文件的关联; ④SELECT-SQL查询。 ○5统计命令COUNT、SUM、AVERAGE、CALCULATE、TOTAL; 4、程序设计初步 ①程序文件。程序文件的建立和执行MODIFY COMMAND<命令文件>、DO <命令文件>和菜单方式执行、状态命令设置、INPUT、ACCEPT、WAIT、?、??、; ②程序控制命令。程序设计的三种结构顺序、分支、循环; ③多模块化程序设计。基本概念、子程序、函数、过程、全程变量和局部变量; 5、窗口设计 ①窗口操作命令。窗口的定义与修改DEFINE WINDOW、ACTIVATE WINDOW、MODIFYWINDOW、HIDE WINDOWS、SHOW WINDOW、DEACTIVATE WINDOWRELEASE WINDOW、CLEAR WINDOW、CLEAR ALL; ②窗口着色。颜色对与颜色模式、SET COLOR TO、COLOR SCHEME、SET COLOROFSCHEME; ③BROWSE窗口设计。定义BROWSE窗口、定义功能键。 6、菜单设计 ①下拉式菜单设计 ②弹出式选单设计 7、表单设计基础 ① 表单向导 ② 表单设计器 ③面向对象的程序设计方法(基本概念、对象的引用) 8、表单控件设计 ① 输出类控件(标签、图象、线条、形状) ② 输入类控件(文本框、编辑框、列表框与组合框、微调控件)③ 控制类控件(美丽按钮与美丽按钮组)④ 容器类控件(表格、页框、容器) ⑤ 连接类控件(ActiveX控件、ActiveX绑定控件) 9、表单高级设计 ①多表单应用程序(应用程序界面、表单集) ②用户定义属性与方法程序(用户定义属性、用户定义方法程序)③类(基本概念、用户定义类)④表单/表单集设计实例 10、报表设计 ①打印基础。打印准备、打印方法、打印命令 ②传统的打印设计 ③报表设计器的基本操作(打开标本设计器窗口、快速制表、标本打印)④报表设计器的高级操作,了解 9、系统开发实例(对本科做基本的讲解)①开发的基本步骤 ○2以具体的实例进行讲解 二、《高级语言程序设计(Visual FoxPro语言)》大纲说明 1、教学目的与任务 在当今时代,计算机已经在世界范围内得到广泛的推广和应用。其中信息管理和数据处理已成为计算机应用的主流领域,而数据库技术是这个领域的核心之一。 Visual FoxPro系统是一个优秀的多用户关系数据库管理系统。本课程详细地讲解了Visual FoxPro的各种命令、函数的功能,以及Visual FoxPro程序设计的方法,培养学生能灵活地应用Visual FoxPro 语言设计程序、进行维护管理,充分发挥计算机在信息管理和数据处理方面的优越性。 《高级语言程序设计(Visual FoxPro语言)》是面向全院所有专业本、专科生的计算机高级语言程序,它侧重于数据库的基本概念、数据库的基本操作、简单的程序设计、菜单程序设计、窗口菜单设计以及必须掌握的表单设计和简单的菜单生成程序设计。侧重于计算机对数据的基本处理、表单的数据输出,使学生具备一定的计算机高级语言程序设计的能力,为学生利用计算机解决问题(特别是专业中的问题)准备必要的知识;本大纲重点基于数据库的基本操作和简单的程序设计,为学生学习相应的语言打下一定的基础。 2、本课程与其他课程的关系 学习本课程,需要有一定的计算机基本操作技能,对计算机有一定的了解和使用。它是学 要求学生掌握计算机高级语言以及对计算机对数据处理方式和方法的掌握。为学习今后学习计算机解决问题和高年级学习专业课打下坚实的基础。 3、教学基本要求 具有使用计算机高级语言解决基本问题的能力,掌握计算机对数据处理的方法和掌握计算机对数据处理的基本操作技能。要求学生学习了本课程后,能编制简单的程序解决数据处理的问题,掌握程序设计的基本方法。 了解数据库的基本原理和数据库与数据库管理系统的关系,了解Visual FoxPro的基本性能指标,掌握数据库的基本使用方法。 掌握数据库的基本统计和数据库记录的查询。 掌握程序设计的三种方法和简单的程序设计,这是全书的重点。 掌握菜单设计、窗口设计、菜单设计,对菜单设计,只要求掌握屏幕菜单方式和屏幕生成程序,对命令方式只做基本的了解。 4、实验课程 附实验大纲,按实验大纲的要求完成实验。 5、课程学时安排 学时安排遵循理论重于实践,理论课的学时分配占总学时的60%,实验课的操作,要求严格按照实验大纲,以循序渐进的方式进行,如果学生没有完成当天实验课程的任务,学生可以自己找时间自己解决。 章 次 讲 课 内 容 授课 上机 第一部分 数据库的基本概念第二部分 数据库的基本操作第三部分 查询与统计、SQL 第四部分 程序设计基础第五部分 菜单设计第六部分 表单设计及基础第七部分 表单高级设计第八部分 报表设计合计 22 6、教学参考资料 《数据库及其应用》 牛允鹏等 经济科学出版社 《Visual FoxPro活学活用》 张佑挺 张锦川等 重庆大学出版社 《Visual FoxPro及其应用系统开发》 史济民 汤观全编著 清华大学出版社 《FoxPro用户参考大全》 金荣得 胡传国等 电子出版社 《FoxBASE数据库应用教程》 北京希望电子出版社 《FoxPro命令与函数》 张锦豪等 学苑出版社 《FoxPro数据库实用教程》 王跟东等编著 四川大学出版社第二篇:《高级语言程序设计C》实验教学大纲
第三篇:高级语言程序设计(C语言)实验教学大纲
第四篇:高级语言程序设计(VB)实验评分方法及注意事项
第五篇:高级语言程序设计-教学大纲