标题:请问,这样做对吗?
取消只看楼主
cnrainboy
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2006-8-27
 问题点数:0 回复次数:3 
请问,这样做对吗?

今天刚学的指针,有道题目,是利用指针进行两个数字的交换。以前没学指针的时候也能进行转换。现在不知道,这样做,是符合用指针进行交换的题目意思吗?需要什么改进的吗?

代码如下:

#include<stdio.h>
void main()
{
int num1,num2,temp;
int *prt;

printf("请输入两个用于比较的数字:\n");
printf("\n数字一:\t");
scanf("%d",&num1);
printf("\n数字二:\t");
scanf("%d",&num2);
printf("\n交换前的顺序是,数字一:%d,数字二:%d\n",num1,num2);

prt=&num1;
temp=*prt;
num1=num2;
num2=temp;
printf("\n交换后的顺序是,数字一:%d,数字二:%d\n",num1,num2);
}

搜索更多相关主题的帖子: include color 
2006-09-05 18:48
cnrainboy
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2006-8-27
得分:0 
自己感觉不象是在用指针呢!!
2006-09-05 19:02
cnrainboy
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2006-8-27
得分:0 

这个是用指针进行转换,但实际上数字好象并没有真正的转换过来。但是哪个更合题目呢?

#include<stdio.h>
void main()
{
int num1,num2;
int *prt1,*prt2,*temp;

printf("请输入两个用于比较的数字:\n");
printf("\n数字一:\t");
scanf("%d",&num1);
printf("\n数字二:\t");
scanf("%d",&num2);

prt1=&num1;
prt2=&num2;
printf("\n交换前的顺序是,数字一:%d,数字二:%d\n",*prt1,*prt2);
temp=prt1;
prt1=prt2;
prt2=temp;
printf("\n交换后的顺序是,数字一:%d,数字二:%d\n",*prt1,*prt2);
}

2006-09-05 19:13
cnrainboy
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2006-8-27
得分:0 
恩,不过现在指针在我的脑海里还是迷迷糊糊的。还要多做习题的。
2006-09-05 21:21



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-88267-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.289029 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved