C语言程序设计实验报告

2026/4/24 5:57:51

金陵科技学院实验报告

实验项目名称: 高级程序设计 实验学时: 6 同组学生姓名: 实验地点: 实验日期: 实验成绩: 批改教师: 批改时间:

21

金陵科技学院实验报告

实验3 高级程序设计

一、实验目的和要求

(1)理解C语言中指针的本质,区分指针与指针变量,掌握有关指针的应用; (2)熟练掌握字符串常量和字符串的存储及字符串处理函数的使用; (3)掌握字符指针的定义、使用等; (4)掌握向函数传递字符串的方法;

二、实验仪器和设备

奔腾以上计算机,装有windows XP以上版本操作系统和Visual C++ 6.0软件。

三、实验内容与过程

1、程序调试 (1) main()

{ int a=10,b=20,x,*pa,*pb; pa=&a;pb=&b;

printf(“%d,%d,%d,%d”,a,b,*pa,*pb); x=*pa;*pa=*pb;*pb=x;

printf(“%d,%d,%d,%d”,a,b,*pa,*pb); } (2) main()

{ int a=10,b=20,*p,*pa=&a,*pb=&b; printf(“%d,%d,%d,%d”,a,b,*pa,*pb);

p=pa;pa=pb;pb=p;

printf(“%d,%d,%d,%d”,a,b,*pa,*pb); }

(3) int *swap(int *a,int *b)

{ int *p; p=a; a=b; b=p; return(a); } main()

{int x=3,y=4,z=5; swap(swap(&x,&y),&z); printf(“%d,%d,%d”,x,y,z); }

思考:上面程序中函数swap()预将两个数的值相互交换,但结果为什么没有交换? 2、程序改错

22

金陵科技学院实验报告

要求:1、改错时,只允许修改现有语句中的一部分内容,不允许添加和删除语句。 2、提示行下一行为错误行。

(1)功能:为一维数组输入10个整数;将其中最小的数与第一个数对换,将最大的数与最后一个数对换,输出数组元素。

#include

void input(int *arr,int n) {

int *p,i; p=arr;

printf(\ for(i=0;i

/**********ERROR**********/ scanf(\}

void max_min(int *arr,int n) {

int *min,*max,*p,t; min=max=arr;

for(p=arr+1;p

/**********ERROR**********/ if(*p<*max) max=p;

else if(*p<*min) min=p; t=*arr;*arr=*min;*min=t; /**********ERROR**********/ if(max=arr) max=min; t=*(arr+n-1);

*(arr+n-1)=*max; *max=t; }

void output(int *arr,int n) {

int *p,i; p=arr;

printf(\ /**********ERROR**********/ while(i=0;i

main() {

int a[10]; input(a,10);

23

金陵科技学院实验报告

max_min(a,10); output(a,10); }

(2)功能:将s所指字符串的反序和正序进行连接形成一个新串放在t所指的数组中。 例如:当s所指的字符串的内容为\时,t所指数组中的内容为\。 #include #include #include

/**********FOUND**********/ void fun (char s, char t) {

int i, d;

/**********FOUND**********/ d = len(s);

/**********FOUND**********/ for (i = 1; i

t[i] = s[d - 1 - i ]; for (i = 0; i

/**********FOUND**********/ t[2*d] = '/0'; }

main() {

char s[100], t[100];

printf(\ scanf(\ fun(s, t);

printf(\}

3、程序设计

说明,所有题目均需添加main(),在main()中调用子函数并设计完整的输入输出才可调试通过。

(1) 功能:请编写一个函数 int fun(int *s, int t, int *k),用来求出数组的最大元素在数组中的下标, 用k返回。

例如: 输入如下整数:876 675 896 101 301 401 980 431 451 777 则输出结果为: 6, 980

(2) 功能:编写函数void len_cat(char c1[],char c2[])将第二个串连接到第一个串之后,不允许使用strcat函数

(3) 功能:编写函数long fun ( char *p),将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。

例如:若输入字符串\,则函数把它转换为整数值 -1234。

24


C语言程序设计实验报告.doc 将本文的Word文档下载到电脑
搜索更多关于: C语言程序设计实验报告 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219