多组输入
本帖最后由 mamaaini 于 2023-11-19 13:08 编辑找次大和次小,哪里不对
#include<stdio.h>
int main()
{
int T,N,i,j,temp=0;
int a;
scanf("%d",&T);
while(T--)
{
scanf("%d",&N);
for(i=0;i<N;i++)
{
scanf("%d",&a);
}
for(i=0;i<N-1;i++)
{
for(j=0;j<N-1-i;j++)
{
if(a>a)
{
temp=a;
a=a;
a=temp;
}
}
}
printf("%d %d",a,a);
}
return 0;
}
#include <stdio.h>
int main() {
int T, N, i, j, temp = 0;
int a;
scanf("%d", &T);
while (T--) {
scanf("%d", &N);
for (i = 0; i < N; i++) {
scanf("%d", &a[ i]);
}
for (i = 0; i < N - 1; i++) {
for (j = 0; j < N - 1 - i; j++) {
if (a > a) {
temp = a;
a = a;
a = temp;
}
}
}
printf("%d %d", a, a);
}
return 0;
}
这段代码的作用是找出输入数组中的次大值和次小值。它首先接受一个整数T,表示有T组测试数据。然后对于每组测试数据,首先接受一个整数N,表示数组的长度,接着接受N个整数作为数组元素。之后使用冒泡排序对数组进行排序,最后输出排序后的数组的倒数第二个元素和第二个元素,即次大值和次小值。
#include <stdio.h>
int main() {
int T, N, i, j, temp = 0;
int a;
scanf("%d", &T);
while (T--) {
scanf("%d", &N);
for (i = 0; i < N; i++) {
scanf("%d", &a);
}
for (i = 0; i < N - 1; i++) {
for (j = 0; j < N - 1 - i; j++) {
if (a > a) {
temp = a;
a = a;
a = temp;
}
}
}
printf("%d %d\n", a, a);
}
return 0;
}
页:
[1]