利用指针完成,输入任意三个整数ABC,按由大到小的顺序输出
#include
#include
void swap(int *a,int *b) //改变实参指针变量所指变量的值
{
int temp;
temp=*a; //交换a和b的值
*a=*b;
*b=temp;
}
void exchange(int *p1,int *p2,int *p3)
{
if(*p1>*p2) swap(p1,p2);//a>b,交换a和b的值
if(*p1>*p3) swap(p1,p3);//a>c,交换a和c的值
if(*p2>*p3) swap(p1,p3);//b>c,交换b和c的值
}
void main()
{
int *p1,*p2,*p3,a,b,c;
printf("%s","enter three integer number:");
scanf("%d,%d,%d",&a,&b,&c);//从键盘输入三个整数,以逗号隔开
p1=&a; //把3个整数分别赋给3个指针变量
p2=&b;
p3=&c;
printf("交换前:%d,%d,%d
",a,b,c);
exchange(p1,p2,p3);
printf("交换后:%d,%d,%d
",a,b,c);
}
图
#include
#define NUM 10
void main()
{
int i,j,k,a[NUM];
printf("请输入10个数字进行从大到小的排序:");
for(i=0;i<NUM;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<NUM;i++)
{
for(j=0;j<NUM;j++)
{
if(a[i]>a[j])
{
k=a[i];
a[i]=a[j];
a[j]=k;
}
}
}
for(i=0;i<NUM;i++)
{
printf("%d",a[i]);
}
}
#define s(a, b) { t = a; a = b; b = t; }
int main(void)
{
int a, b, c;
int* pa = &a, *pb = &b, *pc = &c, *t;
scanf("%d%d%d", pa, pb, pc);
if(*pa < *pb) s(pa, pb);
if(*pa < *pc) s(pa, pc);
if(*pb < *pc) s(pb, pc);
printf("%d %d %d\n", *pa, *pb, *pc);
return 0;
}
#include<vector>
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
cout<<"Plese input three int numbers:"<<endl;
vector<int> int_vec;
int n;
while(cin>>n)
{
int_vec.push_back(n);
}
sort(int_vec.begin(),int_vec.end());
vector<int>::size_type i=0;
while(i!=int_vec.size())
{
cout<<int_vec[i]<<'\n';
++i;
}
cout<<endl;
return 0;
}
要求用指针操作字符串 从键盘上任意输入一字符串,用冒泡排序的方法将该...
include <stdio.h> include<string.h> void main(){ char a[100];int i,j,k;puts("请输入字符串:");scanf("%s",a);k=strlen(a);for(i=0;i<k-1;i++)for(j=0;j<k-i-1;j++)if(a[j]>a[j+1]){ int t=a[j+1];a[j+1]=a[j];a[j]=t;} printf("按ASCII码...
...将其有序地插入到数组中。请使用指针法编程实现。
运行过了,可以运行。输入三个参数:待插入的有序数组、数组长度、待插入的整数。include<stdio.h> void insert(int *, int, int);int main(){ int a[10]={3,5,7,9,11,13,15,17,19};insert(a, 10, 10);int i=0;for(i=0;i<10;i++)printf("%d ", a[i]);} void insert(...
求输入任意三个实数,按从大到小的顺序输出。要求用指针变量作函数...
\/ 请输入三个整数(逗号隔开): 23,65,91 91 65 23 Press any key to continue \/ include <stdio.h> void maxTmin(int *a,int *b,int *c) { if(*a > *b) { if(*b > *c) printf("%d %d %d\\n\\n",*a,*b,*c);else if(*a > *c) printf("%d %d %d\\n\\n",*a,*c...
用指针的方法处理:输入十个整数,将其中最小的数与第一个数交换,将最...
include <stdio.h> include <conio.h> void main(){ int i,min,max,temp,t1,t2,a[10],*p=a;for(i=0;i<10;i++)scanf("%d",p+i);min = a[0];max = a[0];t1=0;t2=0;for(i=0;i<10;i++){ if(min>a[i]){ min=a[i];t1=i;} if(max<a[i]){ max=a[i];t2...
怎么直接用指针输入整型数组
1、打开DEVC++软件,新建一个空白的C语言文件:输入程序的源码,先定义一个整型数组a[5]。2、采用scanf语句输入数组中的每个元素,这里使用指针来对输入的数字进行访问。3、先给输入的每一个数字给予它的地址,便于访问,最后拿得到的数计算出平均值输出,程序即可编写完成。
求任意两个浮点数的最大值、最小值和平均值(利用指针来完成)
include <stdio.h> int main(){ float a,b,c,*p1=&a,*p2=&b,max,min;printf("请输入两个数:\\n");scanf("%f%f",p1,p2);max=*p1>*p2?*p1:*p2;min=*p1+*p2-max;c=(*p1+*p2)\/2;printf("max=%f,min=%f\\nc=%f",max,min,c);return 0;} ...
c语言,任意输入两个字符串,连接成一个字符串,并输出。用指针实现。
include <stdio.h> void main(){ char a[100],b[100],*p1,*p2; scanf("%s%s",a,b); p1=a; p2=b; while(*p1!=0) p1++; while(*p2!=0) *p1++=*p2++; *p1=0; printf("%s\\n",a);} ...
采用指针变量表示地址的方法输入输出数组中的元素?
void main(){ int a[5 ],i;for (i = 0 ;i < 5 ;i ++ ){ \/ (a+i) 表示采用间接访问的方法来访问数组元素,其中a表示数组名,也是指针变量所存的起始地址 \/ (a + i)= i;\/ 通过地址a+i可以找到数组元素a[i] ,而*(a+i) 的值就是a[i]的值 \/ } for (i = 0 ;i < 5...
c语言问题,用指针方法处理 输入10个整数,将其中最小的数与第一个数交...
include "stdio.h"void main(){ int i,min,a[10],*p,max; p=a; for(i=0;i<10;i++) scanf("%d",p+i); max=min=*p; for(i=0;i<10;i++) if(min>*(p+i))min=*(p+i); for(i=0;i<10;i++) if(min==*(p+i))break; *(p+i)=*...
输入任一字符串(长度小于20),判断此字符串是否是回文字符串,即字符串顺...
high--;} return true; } int main(){ cout<<"Input a string:if true output 是,else 否:"; \/\/输入字符串 char string[100];cin.getline(string,100); \/\/以数组储存字符串 if(huiwen(string))cout<<"是"<<endl;else cout<<"否"<<endl;return 0;} ...
宁易帅立: #include<vector> #include<iostream> #include<algorithm> using namespace std; int main() { cout<<"Plese input three int numbers:"<<endl; vector<int> int_vec; int n; while(cin>>n) { int_vec.push_back(n); } sort(int_vec.begin(),int_vec.end()); ...
四子王旗15935811170: 用指针的方式实现从键盘输入3个整数,按从小到大的顺序输出.. - ?
宁易帅立: #include<stdio.h> void main() { int i,temp,a[3],*p=a; for (i=0;i<3;i++) scanf("%d",p+i); if(*p>*(p+1)) {temp=*p;*p=*(p+1);*(p+1)=temp;} if(*(p+1)>*(p+2)) {temp=*(p+1);*(p+1)=*(p+2);*(p+2)=temp;} for (i=0;i<3;i++) printf("%d ",*(p+i)); }
四子王旗15935811170: 用指针方法编写一个程序,输入3个整数,将它们按由小到大的顺序输出 - ?
宁易帅立: #include void main() { int a,b,c,x; int *pa,*pb,*pc; pa=&a;//这里的指针前的星号去掉就行了 pb=&b;// pc=&c;//三个都一样 printf("请输入3个整数\n"); scanf("%d%d%d",pa,pb,pc); if(*pa>*pb) { x=*pa; *pa=*pb; *pb=x; } if(*pa>*pc) { x=*pa; *pa=*pc; *pc=x; } if(*pb>*pc) { x=*pb; *pb=*pc; *pc=x; } printf("这3个数由小到大的排列顺序为%d,%d,%d",*pa,*pb,*pc); }
四子王旗15935811170: 在主程序中任意输入三个整数a,b,c,写一函数sort(int*a,int*b,int*c)完成排序,a最小,c最大,在主程序输出结果,用指针方法完成. - ?
宁易帅立: #includevoid main() { void sort (int*a, int*b,int*c); int a,b,c; scanf("%d%d%d",&a,&b,&c); sort(&a,&b,&c); printf("a=%d,b=%d,c=%d\n",a,b,c); } void sort (int *a, int *b,int *c) { int tmp; if (*a>*b) { tmp=*a; *a=*b; *b=tmp; } if (*a>*c) { tmp=*a; *a=*c; ...
四子王旗15935811170: 输入三个整数,按从小到大的顺序输出.要求用指针实现. - ?
宁易帅立: 你这是由大到小排序, 这两行代码错误:for(j=0;j<3;j++) for(i=0;i<3-j;i++)超出数组范围 修改为for(j=0;j<2;j++) for(i=0;i<2-j;i++)还有就是把后面那比较的代码if(a[i]<a[i+1]) 的 < 号改为 > 就是由小到大排序了修改后程序如下: #include<stdio.h> ...
四子王旗15935811170: 从键盘输入3个整数a,b,c,输出其中最大的数怎样用指针编程 - ?
宁易帅立: #include <stdio.h> main() {int i1, i2, i3, i4; //整数变量int *a = &i1, *b = &i2, *c = &i3, *t = &i4; //指针定义scanf("%d%d%d", a, b, c); //读取输入if (*a < *b) //前两个数中确保a最大{t = a;a = b;b = t;}if (*a < *c) //在第一次比较的基础上,确保三个数中a最大{t = a;a = c;c = t;}printf("%d", *a); //输出最大值 }
四子王旗15935811170: 在主程序中任意输入三个整数为a b c ,写一函数sort (int*a, int*b int*c)完成排序,a最小,c最大,在主程序输出结果,用指针方法完成.(参数传递 地址传递)?
宁易帅立: #include<stdio.h> void sort(int *a,int *b,int *c); void main() { int a,b,c; scanf("%d,%d,%d",&a,&b,&c); sort(&a,&b,&c); printf("%d,%d,%d\n",a,b,c); } void sort(int *a,int *b,int *c){ int temp; if(*a>*b){temp=*a;*a=*b;*b=temp;} if(*a>*c){temp=*a;*a=*c;*c=temp;} if(*b>*c){temp=*b;*b=*c;*c=temp;} }
四子王旗15935811170: C语言编程题,输入3个整数,由小到大输出,用指针变量 - ?
宁易帅立: #include<stdio.h> void main() {void swap(int *p1,int *p2);/*交换函数的申明*/ int *a1 , *b1 , *c1 , a , b , c ;a1 = &a;b1 = &b;c1 = &c;scanf("%d%d%d",a1,b1,c1);/*输入三个整数赋给a,b,c,*/ if(*a1 > *b1)swap( a1,b1); if(*a1 > *c1) swap( a1,c...
四子王旗15935811170: c语言 输入三个整数,输出最大值最小值,要求使用指针的方式,要具体的分析过程 - ?
宁易帅立: #include<stdio.h> int fun1(int *a) { int i, b, max; max = a[0]; for (i = 1; i < 3; i++) { if (a[i] >= max) b = a[i]; } return b; } int fun2(int *a) { int i, c, min; min = a[0]; for (i = 1; i < 3; i++) { if (a[i] <= min) c = a[i]; } return c; } int main() { int i, a[3]; printf("input three ...
四子王旗15935811170: 用指针实现三个整数的排序·谢谢! - ?
宁易帅立: #include void main() { void swap(int *p1, int *p2); int a,b,c; int *p1,*p2,*p3; printf("请输入三个整数:\n"); scanf("%d,%d,%d",&a,&b,&c); p1=&a; p2=&b; p3=&c; if(*p1>*p2) { swap(p1,p2); } if(*p1>*p3) { swap(p1,p3); } if(*p2>*p3) { swap(p2,p3...