自考《高级语言程序设计》课程考前串讲讲义
一、上机考试注意事项
1、应熟练运用Turbo C软件进行程序设计:源程序(*.c)à目标程序(*.obj)à可执行程序(*.exe)
2、按考试要求保存成指定的路径和程序文件名。
二、上机考试内容和要求
1、顺序和分支程序设计
1)内容:编写一个简单的顺序结构程序和一个简单的分支结构程序。(第3章)
2)要求:熟悉输入/输出函数、赋值语句、分支语句的使用;掌握编写、输入、编译连接、运行C程序的过程和操作。
3)案例:输入三个整数,按从小到大输出。(注:程序命名为e1_1.exe)
程序清单:
main( )
{
int a,b,c,d;
scanf(“%d,%d,%d”,&a,&b,&c);
if(a>b)
{d=a;a=b;b=d;}
if(a>c)
{d=a;a=c;c=d;}
if(b>c)
{d=b;b=c;c=d;}
printf(“%d,%d,%d”,a,b,c);
}
2、数组和循环程序设计
1)内容:编写一个含有一维数组和单重循环结构的程序,一个含有二维数组和二重循环结构的程序。(第3、4章)
2)要求:熟悉数组的定义、初始化、数组元素引用和三种循环语句的使用。
3)案例:编一C程序,它能读入一个字符串(串长<100,串中可能有空格符),计算并输出该字符串中十进制数字的个数。(注:程序命名为e1_2.exe)
程序清单:
#include“stdio.h”
#include“string.h”
main()
{char a[100];
int i,j,num=0;
printf(“Please inter a string:\n”);
gets(a);
j=strlen(a);
for (i=0;i<>
{if (a>=‘0’&&a<=‘9’)
num++;}
printf(“Number is %d\n”,num);
}
3、指针和函数的应用
1)内容:编写一个含有主函数和另外两个函数的程序,一个函数用变量传递数据,另一个函数用指针传递数据。(第5、6章)
2)要求:熟悉指针变量的定义、初始化和引用,熟悉函数的定义和调用,掌握函数间用值传递和地址传递数据的方法。
3)案例:设y(n) = 1 n<= 1时
y(n) = -y(n-2)+2*y(n-1) n>1时
编一C程序,它能对读入的任意n(n>=0且n<50),能计算并输出y(n)的值。(注:程序命名为e1_3.exe)
程序清单:
int y(n)
int n;
{if (n<=1) return (1);
else return (-y(n-2)+2*y(n-1));
}
main()
{int n;
printf(“Please inter n=”);
scanf(“%d”,&n);
printf(“\n”);
printf(“y(%d)=%d\n”,n,y(n));
}
4、结构型的应用(第7章)
1)内容:编写一个含有结构型数组的程序,包括结构型数据输入、加工、输出。
2)要求:熟悉结构型的定义、结构型数据的定义、初始化和成员引用方法。
3)案例:设有学生信息如下:学号(长整型)、姓名(字符串型)、出生年月(其中含有年份、月份、日,均为整型)。试编一个程序,输入10个学生的上述信息,输出所有学生的学号、姓名和年龄。(注意程序中年龄的求法,是用系统日期中的年份减去出生年月中的年份。获得系统日期的方法是通过系统函数getdate())(注:程序命名为e1_4.exe)
程序清单:
#define N 10
#include“stdio.h”
#include“dos.h”
main( )
{struct birthday
{int year;
int month;
int day;
};
struct
{long num;
char name[20];
struct birthday bir;
}stu[N];
struct date today; /*利用系统定义的日期型结构定义变量today*/
int i;
for(i=0;i< p>
{
scanf(“%ld”,&stu.num);
scanf(“%s”,stu.name);
scanf(“%d,%d,%d”,&stu.bir.year, &stu.bir.month, &stu.bir.day);
}
getdate(&today); /*通过系统函数获得系统日期*/
for(i=0;i< p>
{
printf(“%-8ld”,stu.num);
printf(“%-2ld”,stu.name);
printf(“%-6ld\n”,today.da_year-stu.bir.year);
}
}
5、文件的应用(第8章)
1)内容:编写一个对文件进行简单处理的程序,包括对文件的读写。
2)要求:熟悉文件型指针的定义和引用,以及文件处理函数的使用。
3)案例:编一C程序,它能从当前目录下名为“string.txt”的文本文件中读取一个字符串或前20个字符组成的字符串,并显示在屏幕上。(注:可执行程序命名为e1_5.exe)
程序清单:
#include“stdio.h”
main()
{FILE *fp;
char s[21];
if ((fp=fopen(“string.txt”,“r”))==NULL)
{printf(“string.txt can not open!\n”);
exit(0);
}
fgets(s,21,fp);
fputs(s,stdout);
fclose(fp);
}