c语言 输入a和b两个整数,按先小后大的顺序输出a和b(交换指针)
# include
int main()
{
int a,b,p;
scanf("%d %d
",&a,&b); // 改这一行
int *c=&a;
int *d=&b;
if(a<b)
{p=*d;*d=*c;*c=p;}
printf("%d %d
",a,b);
printf("max=%d min=%d
",*c,*d);
return 0;
}
送一个简单的
//////////////////////////////////////////////////
# include
int main()
{
int a,b;
scanf("%d %d
",&a,&b); // 改这一行if(a<b)
if(a>b)
printf("max=%d min=%d
",a,b);
else
printf("max=%d min=%d
",b,a);
return 0;
}
#include "stdio.h"#include "string.h"void compare(int* x,int* y);int main(){ int a,b,c,d; scanf("%d",&a); scanf("%d",&b); scanf("%d",&c); scanf("%d",&d); compare(&a,&b); compare(&a,&c); compare(&a,&d); compare(&b,&c); compare(&b,&d); compare(&c,&d); printf("%d",a); printf("%d",b); printf("%d",c); printf("%d",d);}void compare(int* x,int* y){ int temp; if(*x < *y) { temp = *y; *y = *x; *x = temp; } }
1、新建一个工程和.c文件 ,输入头文件和主函数。
2、然后开始定义变量类型。
3、输入a和b两个整数。
4、对a和b两个不同的整数进行赋值。
5、然后通过if语句实现值大小的比较。
6、输出最后的结果。
7、编译、运行,可以看见按先小后大的顺序输出a和b。
#include<iostream>
using namespace std;
int main()
{
int *p1,*p2,*p; //p也是指针变量。
int a,b;
cout<<"请输入两个整数:"<<endl;
cin>>a>>b;
p1=&a;
p2=&b;
if(a<b)
{
p=p1;//将p1和p2的指向互换。
p1=p2;
p2=p;
}
cout<<"a="<<a<<" "
<<"b="<<b
<<endl;
cout<<"max="<<*p1<<" "
<<"min="<<*p2
<<endl;
return 0;
}
运行效果:
扩展资料:
1、定义指针变量的一般形式如下:
类型名*指针变量名1,*指针变量名2,...*指针变量名n;
2、空指针
空指针是一个特殊的指针,它的值是0,C语言中用符号常量NULL(在stdio.h中定义)表示这个空值,并保证这个值不会是任何变量的地址。空指针对任何指针类型赋值都是合法的。一个指针变量具有空指针值表示当前它没有指向任何有意义的东西。
3、void指针
(void*)类型的指针叫通用指针,可以指向任何的变量,C语言允许直接把任何变量的地址作为指针赋给通用指针。但是需要注意void*不能指向由const修饰的变量。
例如:const int test;void*ptv;ptv=&test;第三句是非法的,只有将ptv声明为const void*ptv;,上述第三句ptv=&test才是合法的。
当需要使用通用指针所指的数据参加运算时,需要写出类型强制转换。如通用指针ptv所指空间的数据是整型数据,p是整型指针,用此式转换:p=(int*)ptv;
#include <stdio.h>
int main()
{
int *p1,*p2,*p;
scanf("%d %d",&a,&b);
int a=2,b=5;
p1=&a;
p2=&b;
if(a<b)
{
p=p1; //将p1和p2的指向互换。
p1=p2;
p2=p;
}
printf("%d %d
",*p2,*p1);
return 0;
}
扩展资料:
两个地方要注意:
1、在程序声明变量的时候的*,只是表明“它是一个无符号整数,这个整数指向某个内存地址,一次访问sizeof(type)长度”。这点不要和(*)操作符混淆;
2、在C++程序声明变量的时候的&,只是表明“它是一个引用,这个引用声明时不开辟新空间,它在内存分配表加入新的一行,该行内存地址等于和调用时传入的对应参数内存地址”。
参考资料:
百度百科-指针
void swap(int *p, int *q)
{
int t;
if(*p>*q)
{
t=*p;
*p=*q;
*q=t;
}
}
void main(void)
{
int a,b;
scanf("%d %d", &a,&b);
swap(&a,&b);
printf("%d %d
",a,b);
}
#include<stdio.h>
void main()
{int a,b;
scanf("%d,%d",&a,&b);
if(a>=b)
print("%d,%d",b,a);
else
print("%d,%d",a,b);
}
c语言 输入a和b两个整数,按先小后大的顺序输出a和b(交换指针)
1、新建一个工程和.c文件 ,输入头文件和主函数。2、然后开始定义变量类型。3、输入a和b两个整数。4、对a和b两个不同的整数进行赋值。5、然后通过if语句实现值大小的比较。6、输出最后的结果。7、编译、运行,可以看见按先小后大的顺序输出a和b。
c语言中的随意输入两个数按从小到大的输出
int a,b;printf("输入两个数,空格分开:");scanf("%d%d",&a,&b);if(a<b)printf("%d %d\\n",a,b);else printf("%d %d\\n",b,a);}
编写一个C++风格的程序,输入两个整数,将它们按由大到小的顺序输出。要求...
include using namespace std;int main(){void compare(int &a, int &b);int a,b;cout<<"请输入需要比较的两个数。"<>a>>b;compare(a,b);return 0;}void compare(int &a,int &b){if(a>b)cout<<"最大值为"<<a<<"最小值为"<<b<<endl;if(a<b)cout<<"最大值为"<<b<<...
输入两个实数,按代数值由小到大的顺序输出这两个数.
这个程序是可以达到你所说的目的的。如果a<b,那直接输出的话就是由小到大。只有当a>b的时候,才需要对换它们的值。程序的执行是这样的,woid main(){float a,b,t; \/\/定义浮点型a b tscanf("%f,%f",&a,&b); \/\/输入a bif(a>b) \/\/当a>b时,执行1、2、3步骤,否则直接跳到...
C语言编程 ,输入两个整数,按由小到大的次序输出。
我这个比较简单 include"stdio.h"main {int a,b,c;scanf("%d %d",&a,&b);if(a>b){c=b;b=a;a=c;} printf("%d,%d",a,b);}
用C语言在键盘上输入两个整数比较两个数的大小将大的输出
include<stdio.h>int main(){int a,b;printf("请输入两个整数\\n");scanf("%d%d",&a,&b);printf("%d", (a>b?a:b));return 0;}
C语言 从键盘上输入2个int型数 比较大小,并且显示最小数
在 C 语言中,可以使用以下代码从键盘上输入两个整数,比较大小,并显示最小的数:```c include <stdio.h> int main() { int num1, num2, min;printf("请输入两个整数:\\n");scanf("%!d(MISSING) %!d(MISSING)", &num1, &num2);if (num1 < num2) { min = num1;} else {...
编写程序,从键盘输入两个双精度实数a和b,要求两个数按照升序排序(如果a...
编写程序,从键盘输入两个双精度实数a和b,要求两个数按照升序排序,以下是用C++语言实现的代码段:double a,b,t;cin>>a>>b;if(a>b){t=a; a=b; b=t;} cout<<a<<" "<<b<<endl;
用重载函数实现两个整数和三个整数的排序,按照从小到大的顺序将排序结果...
int main(){ int a,b; int c,d,e; cout<<"请输入两个整数:"<<endl; cin>>a>>b; sort(a,b); cout<<"排序之后:"<<a<<" "<<b<<" "<<endl; cout<<"请输入三个整数:<<endl; cin>>c>>d>>e; sort(c,d,e); cout<<"排序之后:"<<c...
用C语言编写程序,输入a和b两个整数,比较两个数的大小,将较大的数放在a...
include<stdio.h> void maxa(int *a,int *b) { int c; if ( (*a)<(*b) { c=(*a); (*a)=(*b); (*b)=c; } } void main() { int a,b;scanf("%d%d",&a,&b); printf("%d %d\\n",a,b);maxa(&a,&b); printf("%d %d\\n",a,b);} ...