用C语言编一个程序,把一个一维数组中最大的数和第一个数调换,最小的和最后一个数调换。谢谢好心人
void echange (int a[], int n)
{
int max, min, i, temp;
max = min = 0;
for(i=1; i<n; i++) {
if(a[max] > a[i] ) max = i;
if(a[min] < a[i]) min = i;
}
if (max != 0) {
temp = a[0];
a[0] = a[max];
a[max] = temp;
}
if (min != n-1) {
temp = a[n-1];
a[n-1] = a[min];
a[min] = temp;
}
}
/*C语言 程序 输入10个数 讲最大的数与第一个数交换 将最小的数与最后一个数交换*/
#include
main()
{
int a[10],*max,*min,i;
printf("Please input ten numbers:
");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
max=a;
min=a;
for(i=1;i<10;i++)
{
if(*max<a[i])
max=a+i;
else
if(*min>a[i])
min=a+i;
}
{
int temp;
temp=*max;
*max=a[0];
a[0]=temp;
temp=*min;
*min=a[9];
a[9]=temp;
}
for(i=0;i<10;i++)
printf("%4d",a[i]);
}
#define N 10
int main() {
int i, arr[N] = {21, 3, 100, 14, 33, 2, 99, 100, -5, 70}; //i为循环变量
int max = arr[0], min = arr[0], k, tmp;
/*max存储最大数字,min存储最小数字,k存储最大数字或者最小数字下标,
tmp做临时变量*/
for( i = 0; i < N; i ++ )
printf("%d ", arr[i]);
for ( i = 0; i < N; i ++ )
if ( arr[i] > max ){
max = arr[i];
k = i;
}
//循环一遍后,arr[k]即为最大值得那个数,k为其下标
tmp = arr[0];
arr[0] = arr[k];
arr[k] = tmp; //最大值和第一个数交换了
for ( i = 0; i < N; i ++ )
if ( arr[i] < min ){
min = arr[i];
k = i;
}
//循环一遍后,arr[k]即为最小值得那个数,k为其下标
tmp = arr[N-1];
arr[N-1] = arr[k];
arr[k] = tmp; //最大值和第一个数交换了
printf("交换后,各个数字为:\n");
for( i = 0; i < N; i ++ )
printf("%d ", arr[i]);
system("pause");
return 0;
}
#include <stdio.h>
void main()
{
int a[50], i, n, max, min, maxpos, minpos, temp;
printf("数组大小:");
scanf("%d", &n);
for (i = 0; i != n; ++i)
{
scanf("%d", &a[i]);
if (i == 0)
{
max = min = a[i];
maxpos = 0;
minpos = 0;
}
if (max < a[i])
{
max = a[i];
maxpos = i;
}
if (min > a[i])
{
min = a[i];
minpos = i;
}
}
if (maxpos == n - 1 && minpos == 0)
{
temp = a[maxpos];
a[maxpos] = a[minpos];
a[minpos] = temp;
}
else
{
temp = a[maxpos];
a[maxpos] = a[0];
a[0] = temp;
temp = a[minpos];
a[minpos] = a[n - 1];
a[n - 1] = temp;
}
for (i = 0; i != n; ++i)
{
printf("%d ", a[i]);
}
}
#include "stdio.h"
#include "stdlib.h"
int main()
{
int MaxIndex=0,MinIndex=0;
int Array[10];
// srand(193428);
for (int i=0;i<10;i++)
{
Array[i]=rand();
printf("%d\t",Array[i]);
}
printf("\r\n");
for (i=1;i<10;i++)
{
if (Array[MaxIndex]<Array[i]) MaxIndex=i;
else if (Array[MinIndex]>Array[i]) MinIndex=i;
}
printf("MaxIndex=%d,MinIndex=%d\r\n",MaxIndex,MinIndex);
int tmp=Array[0];
Array[0]=Array[MaxIndex];
Array[MaxIndex]=tmp;
if (MinIndex==0) MinIndex=MaxIndex;
tmp=Array[9];
Array[9]=Array[MinIndex];
Array[MinIndex]=tmp;
for (i=0;i<10;i++)
{
printf("%d\t",Array[i]);
}
printf("\r\n");
return 0;
}
用C语言编一个程序,把一个一维数组中最大的数和第一个数调换,最小的...
arr[k] = tmp;\/\/最大值和第一个数交换了 for ( i = 0; i < N; i ++ )if ( arr[i] < min ){ min = arr[i];k = i;} \/\/循环一遍后,arr[k]即为最小值得那个数,k为其下标 tmp = arr[N-1];arr[N-1] = arr[k];arr[k] = tmp;\/\/最大值和第一个数交换了 print...
C语言编写程序,将一个一维数组的值按逆序重新存放。
int main(){ int a[5]={8,6,5,4,1},i,n=5,temp;for(i=0;i<n\/2;i++){ temp=a[i];a[i]=a[n-i-1];a[n-i-1]=temp;} for(i=0;i<n;i++){ printf("%d\\t",a[i]);} system("pause");return 0;}
c语言,编写一个程序可以输入任意一个一维数组,代码
第一种:在输入数组元素之前,得先输入数组的长度。第二种:使用链表。这时就不需要指定数组的长度 了。我先确定一下是不是这样,如果你确实有这个需求的话,我再编写代码,好吗?
C语言编写程序 将一个一维数组进行逆置,如原来是1,2,3.后为3,2,1
将原本数组,头尾对称位置互换即可。函数代码如下:void reverse(int *a, int l)\/\/将a上长度为l的数组逆置{ int i,t; for(i = 0; i <=l\/2; i ++) { t = a[i]; a[i] = a[l-i-1]; a[l-i-1] = t; }} ...
C语言如何实现一个一维数组的输入输出?
C语言程序如下:include <stdio.h> void fun(int a[],int n,int *k){ int i,maxxr,j;maxxr=a[0];for(i=0;i<n;i++){ if(maxxr<a[i]){ maxxr=a[i];} } for(i=0;i<n;i++){ if(maxxr==a[i]){ j=i;break;} } k=j;} int main(void){ int a[10]={ 876,...
c语言答案函数调用函数将一维数组中的值逆序存放
用C语言编写一个程序,将一个一维数组的值逆序存放
编写一个c程序,从键盘输入一个长度为10的实型一维数组,然后顺序输出...
C语言程序编写教程:创建一个程序,接收用户输入的十个实数,并依次输出这些数值,同时找出其中的最大值及其对应的下标。首先定义一个长度为10的实型一维数组,然后使用循环结构从键盘读取十个实数值。接着遍历数组,比较元素大小,记录下最大值及其位置。最后输出数组所有元素,并显示最大值及其下标。下面...
用C语言编写一个程序,将一维数组中的元素向右循环N次,用指针法和下标法...
void main(){ int array[X+1];\/\/长度为x+1,最后一个元素为array[x]int n,i,j;scanf("%d",&n);\/\/读取循环次数 for(i=0;i<X;i++)scanf("%d",&array[i]);\/\/读入数组 for(i=1;i<=n;i++)\/\/ 循环n次 { array[X]=array[X-1];for(j=X-1;j>=0;j--)array[j]=...
c编程:有一个一维数组,存放10个学生成绩,编写程序,求出平均分,最高分...
第二步,编写主函数,并包含必要的头文件,例如“#include <stdio.h>”以使用输入输出函数。这样做的目的是确保程序可以正确处理输入和输出。第三步,定义一个整型一维数组来存储10个学生的成绩。同时,定义变量用于存储最高分、最低分以及总分,以便后续计算。第四步,使用for循环输入每个学生的成绩。在...
用C语言编写程序使一个一维数组内的数从大到小排列
using namespace std;define maxn 1000 int a[maxn];bool cmp ( int a, int b ) { return a > b;}int main(){ int i, n;printf ( "请输入要排序的元素个数:" );scanf ( "%d", &n );printf ( "请依次输入%d个数:", n );for ( i = 0; i < n; i++ )scanf ( "...