程序设计作业.docx

上传人:b****5 文档编号:29183521 上传时间:2023-07-21 格式:DOCX 页数:8 大小:111.82KB
下载 相关 举报
程序设计作业.docx_第1页
第1页 / 共8页
程序设计作业.docx_第2页
第2页 / 共8页
程序设计作业.docx_第3页
第3页 / 共8页
程序设计作业.docx_第4页
第4页 / 共8页
程序设计作业.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

程序设计作业.docx

《程序设计作业.docx》由会员分享,可在线阅读,更多相关《程序设计作业.docx(8页珍藏版)》请在冰豆网上搜索。

程序设计作业.docx

程序设计作业

程序设计实验报告(第四次)

 

班级:

机自七班

姓名:

王学盛

学号:

20110401728

一、指针基础运算

(1)源程序代码:

#defineN5

#include

#include

intmain()

{

int*p,*q,a[N];

inti,tmp;

p=a;

q=(int*)malloc(N*sizeof(int));

printf("pleaseinputthefirstgroup:

");

for(i=0;i

scanf("%d",p+i);

printf("pleaseinputthesecendgroup:

");

for(i=0;i

scanf("%d",q+i);

for(i=0;i

if(*(p+i)>*(q+i))

{

tmp=*(p+i);*(p+i)=*(q+i);*(q+i)=tmp;

}

printf("Result:

\n");

for(i=0;i

printf("%d",*(p+i));

printf("\n");

for(i=0;i

printf("%d",*(q+i));

printf("%X%x%X\n",p,a,q);

free(q);

return0;

}

(2)运行结果。

 

二、数据交换

(1)源程序代码。

#include

voidswap1(intx,inty);

voidswap2(int*x,int*p);

intmain()

{

inta,b;

printf("PleaseInputa=:

");

scanf("%d",&a);

printf("\nb=:

");

scanf("%d",&b);

swap1(a,b);

printf("\naftercallswap1:

a=%db=%d\n",a,b);

swap2(&a,&b);

printf("\naftercallswap2:

a=%db=%d\n",a,b);

return0;

}

voidswap1(intx,inty)

{

inttemp,a,b;

temp=x;

a=y;

b=temp;

}

voidswap2(int*x,int*y)

{

inttemp;

temp=*x;*x=*y;*y=temp;

}

(2)运行结果。

三.字符串反转连接.

1.程序代码.

#include

char*reverse(char*str);

char*link(char*str1,char*str2);

intmain()

{

charstr[50],str1[50],str2[50];

printf("pleaseinputreversingcharacterstring:

");

gets(str);

str[50]=*reverse(str);

printf("\npleaseoutputreversingcharacterstring:

");

puts(str);

printf("\npleaseinputstring1:

");

gets(str1);

printf("\npleaseinputstring2:

");

gets(str2);

str1[50]=*link(str1,str2);

puts(str1);

return0;

}

char*reverse(char*str)

{

char*p,*q,temp;

p=str;q=str;

while(*q!

='\0')

{

q++;

}

q--;

while(p

{

temp=*p;*p=*q;*q=temp;

p++;q--;

}

returnstr;

}

char*link(char*str1,char*str2)

{

char*p=str1;

while(*p!

='\0')

{

++p;

}

p=str2;

returnstr1;

}

3.运行结果.

3.结果说明.

反转能正常运行,但连接有误。

四.数组元素奇偶排列.

1.程序代码.

#include

#defineN10

voidarrsort(inta[],intn);

intmain()

{

inta[N],i;

printf("pleaseinputthenum:

");

for(i=0;i

{

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

}

arrsort(a,N);

for(i=0;i

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

printf("\n");

}

voidarrsort(inta[],intn)

{

int*p,*q,temp;

p=a;

q=a+n-1;

if(p

{

if(*q%2==0)

q--;

if(*p%2==1)

p++;

if(p

{

temp=*p;

*p=*q;

*q=temp;

}

p++;q--;

}

}

2.运行结果.

3.结果说明.

当输入数组是5182324261113504317时输出结果如图所示。

五.实验小结.

我发现自己对指针的概念还不是很清楚,运用起来有点吃力!

而且输入较慢,有些语句不太理解。

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

当前位置:首页 > 工程科技 > 电力水利

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1