|   | #2rjsp2019-08-19 08:44 | 
 程序代码:
程序代码:#include<stdio.h>//题目:输入三个整数,a,b,c;要求按大小顺序输出a,b,c
static int A, S,C;
int* q1, * q2, * q3;
//A为排名第1的数,S为排名第2的数
int main()
{
int max(int a);//最小值
void mau(int* q1, int* q2, int* q3);
void str(int *ss,int *sss);
scanf_s("%d %d %d", &A, &S, &C);q1 = &A; q2 = &S; q3 = &C;
printf("总和为%d\t", max(A));
printf("大小顺序排列为%d\t %d\t %d\t", A, S, C);
for (int sssss = 1; sssss < 4; sssss++)
printf("\t\n");
mau(q1, q2, q3);
printf("%d\t%d\t%d\t", *q1, *q2, *q3);
return 0;
}
int max(int a)
{
    
a = A + S + C;
A= A > (S > C ? S : C) ? A : (S > C ? S : C);
C= A < (S < C ? S : C) ? A : (S < C ? S : C);
S = a - A - C;
return a;
    
}
void mau(int* q1, int* q2, int* q3)
{
void str(int* ss, int* sss);
if (*q1 < *q2) str(q1, q2);
if (*q1 < *q3) str(q1, q3);
if (*q2 < *q1) str(q2, q1);
}
void str(int *ss,int *sss)
{
int qs;
qs = *ss;
*ss = *sss;
*sss = qs;
}
static int A, S,C;
int* q1, * q2, * q3;
//A为排名第1的数,S为排名第2的数
int main()
{
int max(int a);//最小值
void mau(int* q1, int* q2, int* q3);
void str(int *ss,int *sss);
scanf_s("%d %d %d", &A, &S, &C);q1 = &A; q2 = &S; q3 = &C;
printf("总和为%d\t", max(A));
printf("大小顺序排列为%d\t %d\t %d\t", A, S, C);
for (int sssss = 1; sssss < 4; sssss++)
printf("\t\n");
mau(q1, q2, q3);
printf("%d\t%d\t%d\t", *q1, *q2, *q3);
return 0;
}
int max(int a)
{
a = A + S + C;
A= A > (S > C ? S : C) ? A : (S > C ? S : C);
C= A < (S < C ? S : C) ? A : (S < C ? S : C);
S = a - A - C;
return a;
}
void mau(int* q1, int* q2, int* q3)
{
void str(int* ss, int* sss);
if (*q1 < *q2) str(q1, q2);
if (*q1 < *q3) str(q1, q3);
if (*q2 < *q1) str(q2, q1);
}
void str(int *ss,int *sss)
{
int qs;
qs = *ss;
*ss = *sss;
*sss = qs;
}
调试结果
1315
14
15
总和为1344 大小顺序排列为1315 15 14
15 1315 14
E:\users\c\指针考题\Debug\指针考题.exe (进程 16716)已退出,返回代码为: 0。
若要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口...
1315
14
15
总和为1344 大小顺序排列为1315 15 14
15 1315 14
E:\users\c\指针考题\Debug\指针考题.exe (进程 16716)已退出,返回代码为: 0。
若要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口...
[此贴子已经被作者于2019-8-18 13:10编辑过]
