欢迎来到天天文库
浏览记录
ID:35200927
大小:226.64 KB
页数:17页
时间:2019-03-21
《c语言程序设计实验报告(数组)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、C语言程序设计实验报告专业计算机班级计算机卓工日期2012年12月31日成绩实验组别第8次实验;指导教师李开学生姓名徐钦振学号U201215120实验名称指针实验一、实验目的(1)熟练掌握指针的使用,赋值与使用。(2)掌握用指针引用数组的元素,熟练指向数组的指针的使用。(3)熟练掌握字符数组与字符串的使用。(4)掌握指针函数与函数指针的使用。(5)掌握带有参数的main函数的使用。二、实验内容及要求。1.源程序改错下面的源程序中是否存在问题?如果存在,原因是什么?如果存在错误,请改正并输出正确的结果。源程序:#include2、dio.h>intmain(void){float*p;scanf("%d",p);printf("%f",*p);return0;}2.源程序修改,完善与替换。(1)下面的源程序的功能是,通过函数指针和菜单选择来调节用字符串拷贝函数或字符串连接函数。请在源程序中的下划线处填写正确的表达式,完善程序。源程序:#include#includeintmain(void){_____________________chara[80],b[80],c[160],*result=c;intchoic3、e,i;do{printf("tt1copystring.");printf("tt2connectstring.");printf("tt3exit.");printf("tt2inputanumber(1-3)please!");scanf("%d",&choice);}while(choice<14、5、choice>5);switch(choice){case1:p=strcpy;break;case2:p=strcat;break;case3:gotodown;}getchar();print6、f("inputthefirststringplease!");i=0;__________________________________________printf("inputthesecondstringplease!");i=0;__________________________________________result=______________________(a,b);printf("Theresultis%s",result);down:;return0;}3.跟踪调试源程序请按下面的要求对所给7、的源程序进行操作,并回答问题和排除错误。(1)按照单步执行源程序,进入strcpy时,watches窗口中的s为何值?返回main函数时,s为何值?(2)排除源程序的错误,并输出正确的答案。源程序:#includechar*strcpy(char*,char*);intmain(){chara[20],b[60]="Thereisaboatinthelake.";printf("%s",strcpy(a,b));return0;}char*strcpy(char*s,char*t){while(*s++=*t8、++);return(s);}4.程序设计编写并上机调试运行能够实现以下功能的程序或者函数。(1)已知一个长整型变量占4个字节,其中每个字节又分为高四位和低四位。是编写一个程序,从该整型的高字节开始,一次取出每个字节的高四位为低四位,并以数字字符的形式进行显示。(2)利用大小为n的指针数组指向用gets函数输入的n行,每行不超过80个字符。是编写一个函数,他的每一行中连续的多个空格字符压缩为一个空格字符。在调用函数时输入压缩后的各行,空行不予输出。(3)编写一个程序,输入n个数,排列后输出。5.选做题编写并上机调试运行能够实现以下9、功能的程序或者函数。(1)设有N位整数和M位小数的两个数据a,b。编写计算a+b并输出结果。(2)编写一个使用复杂申明的程序。(三)指向main函数的参数选择“project/setprograms’arguments...”菜单命令,即可打开图2.12所示的对话框,在文本框中输入main函数的参数。注意只输入命令行中文件名后的参数,文件名不输入。(图2.12输入main函数的参数)(三)实验步骤以及结果1.源程序改错:存在错误,造成了空指针,并且scanf函数的格式不对应。正确的源程序应为:#includein10、tmain(void){floata,*p;p=&a;scanf("%f",p);printf("%f",*p);return0;}2.源程序修改,完善与替换。正确的源程序为:#include#include
2、dio.h>intmain(void){float*p;scanf("%d",p);printf("%f",*p);return0;}2.源程序修改,完善与替换。(1)下面的源程序的功能是,通过函数指针和菜单选择来调节用字符串拷贝函数或字符串连接函数。请在源程序中的下划线处填写正确的表达式,完善程序。源程序:#include#includeintmain(void){_____________________chara[80],b[80],c[160],*result=c;intchoic
3、e,i;do{printf("tt1copystring.");printf("tt2connectstring.");printf("tt3exit.");printf("tt2inputanumber(1-3)please!");scanf("%d",&choice);}while(choice<1
4、
5、choice>5);switch(choice){case1:p=strcpy;break;case2:p=strcat;break;case3:gotodown;}getchar();print
6、f("inputthefirststringplease!");i=0;__________________________________________printf("inputthesecondstringplease!");i=0;__________________________________________result=______________________(a,b);printf("Theresultis%s",result);down:;return0;}3.跟踪调试源程序请按下面的要求对所给
7、的源程序进行操作,并回答问题和排除错误。(1)按照单步执行源程序,进入strcpy时,watches窗口中的s为何值?返回main函数时,s为何值?(2)排除源程序的错误,并输出正确的答案。源程序:#includechar*strcpy(char*,char*);intmain(){chara[20],b[60]="Thereisaboatinthelake.";printf("%s",strcpy(a,b));return0;}char*strcpy(char*s,char*t){while(*s++=*t
8、++);return(s);}4.程序设计编写并上机调试运行能够实现以下功能的程序或者函数。(1)已知一个长整型变量占4个字节,其中每个字节又分为高四位和低四位。是编写一个程序,从该整型的高字节开始,一次取出每个字节的高四位为低四位,并以数字字符的形式进行显示。(2)利用大小为n的指针数组指向用gets函数输入的n行,每行不超过80个字符。是编写一个函数,他的每一行中连续的多个空格字符压缩为一个空格字符。在调用函数时输入压缩后的各行,空行不予输出。(3)编写一个程序,输入n个数,排列后输出。5.选做题编写并上机调试运行能够实现以下
9、功能的程序或者函数。(1)设有N位整数和M位小数的两个数据a,b。编写计算a+b并输出结果。(2)编写一个使用复杂申明的程序。(三)指向main函数的参数选择“project/setprograms’arguments...”菜单命令,即可打开图2.12所示的对话框,在文本框中输入main函数的参数。注意只输入命令行中文件名后的参数,文件名不输入。(图2.12输入main函数的参数)(三)实验步骤以及结果1.源程序改错:存在错误,造成了空指针,并且scanf函数的格式不对应。正确的源程序应为:#includein
10、tmain(void){floata,*p;p=&a;scanf("%f",p);printf("%f",*p);return0;}2.源程序修改,完善与替换。正确的源程序为:#include#include
此文档下载收益归作者所有