您的位置:

c语言数组类作业,c语言数组基础编程题

本文目录一览:

C语言作业,在含有10个元素的数组中,找出最小值,并与第一个数交换。

输入格式:

输入在第一行中给出一个正整数N(≤10),第二行给出N个整数,数字间以空格分隔。

输出格式:

在一行中顺序输出交换后的序列,每个整数后跟一个空格。

输入样例:

5

8 2 5 1 4

输出样例:

1 2 5 4 8

#includelt;stdio.hgt;

main()

{

int n,i,a[10],c,d,min,max,j;

scanf("%d",n);

for(i=0;ilt;n;i++)

{

scanf("%d",alt;igt;);

}

min=max=a[0];

for(i=0;ilt;n;i++)

{

if(alt;igt;lt;=min)

{

min=alt;igt;;

j=i;

}

}

c=a[0];

a[0]=min;

a[j]=c;

for(i=0;ilt;n;i++)

{

if(alt;igt;gt;=max)

{

max=alt;igt;;

j=i;

}

}

d=max;

a[j]=a[n-1];

a[n-1]=d;

for(i=0;ilt;n;i++)

printf("%d",alt;igt;);

}

扩展资料:

方法二、

#includelt;stdio.hgt;

int main(){

int a[10],i,t,imin,imax,n=10;

printf("输入10整数(空格隔开):");

for(i=0;ilt;n;++i)

scanf("%d",alt;igt;);

printf("处理前:\n");

for(i=0;ilt;n;++i)

printf("%d",alt;igt;);

printf("\n");

imin=imax=0;

for(i=1;ilt;n;++i){

if(alt;igt;gt;a[imax])imax=i;

if(alt;igt;lt;a[imin])imin=i;

}

if(imin!=0){

t=a[0];

a[0]=a[imin];

a[imin]=t;

}

if(imax!=n-1){

t=a[n-1];

a[n-1]=a[imax];

a[imax]=t;

}

printf("处理后:\n");

for(i=0;ilt;n;++i)

printf("%d",alt;igt;);

printf("\n");

return 0;

}

c语言数组类作业

#include stdio.h

#define N 6

int main()

{

int num[N],a[8];

int i,j;

int temp;

int n,m;

for(i=0; iN; i++)

scanf("%d", num[i]);

scanf("%d",n);

for(i=0;i8;i++)

a[i]=num[i];

a[6]=n;

a[7]=m;

for(i=0; i7; i++)

for(j=i+1; j8; j++)

{

if(a[i]a[j])

{

temp=a[i];

a[i]=a[j];

a[j]=temp;

}

}

for(i=0; i8; i++)

printf("%d ",a[i]);

return 0;

}

这样。

C语言数组的作业题,帮帮忙啊,急急!!!!!!

唉,很简单的题目,自己都不愿意做!!

一、

1、C 2、A 3、D 4、B 5、B 6、D 7、C 8、B 9、D 10、A

二、

s=-16

三、编程题

1、

#includestdio.h

main()

{

int a[9],i,j,t;

for(i=0;i9;i++)

{

scanf("%d",a[i]);

}

//排序前

for(i=0;i9;i++)

{

printf("%d ",a[i]);

}

printf("\n");

//排序

for(i=0;i9;i++)

for(j=9-1;ji;j--)

if(a[j]a[j-1])

{

t=a[j];

a[j-1]=a[j];

a[j]=t;

}

//排序后

for(i=0;i9;i++)

{

printf("%d ",a[i]);

}

printf("\n");

}

2、

#includestdio.h

main()

{

char a[80],*p;

gets(a);

for(p=a;*p!=0;p++)

{

if(*p='A'*p='Z')

*p+='a'-'A';

}

puts(a);

}

C语言二维数组作业题

#include stdio.h

//矩阵相乘

void mulMatrix(double **a, double **b, double **c, int m, int n, int p)

{

int i,j,k;

for (i=0;im;i++)

for(j=0;jp;j++)

c[i][j] = 0.0;

for(i=0;im;i++)

for(j=0;jp;j++)

{

for(k=0;kn;k++)

c[i][j] += a[i][k]*b[k][j];

}

}

//打印矩阵相乘的结果

void printMatrix(double **c, int m, int p)

{

int i,j;

for(i=0;im;i++)

for(j=0;jp;j++)

printf("c[%d][%d] =%f\n",i,j,c[i][j]);

}

void main()

{

double x[3][4] = {{1,2,3,4}, {5,6,7,8}, {9,10}};

double y[4][2] = {{1,2},{3,4},{5,6},{7}},z[3][2];

double *p_x[3] = {x[0][0], x[1][0], x[2][0]};

double *p_y[4] = {y[0][0], y[1][0], y[2][0], y[3][0]};

double *p_z[3] = {z[0][0], z[1][0], z[2][0]};

mulMatrix(p_x, p_y, p_z, 3, 4, 2);

printMatrix(p_z, 3, 2);

}

C语言作业:编写程序实现整型数组的排序

#includestdio.h

#includestdlib.h

#define shengxu 0

void RandonArray(int a[],int n)

{

int i;

srand(time(NULL));

for(i=0;in;i++)

{

a[i]=rand();

}

}

void SortArray(int a[],int n)

{

int i,j,t;

for(i=0;in-1;i++)

{

for(j=0;jn-i-1;j++)

{

if(shengxu)

{

if(a[j]a[j+1])

{

t=a[j+1];

a[j+1]=a[j];

a[j]=t;

}

}

else

{

if(a[j]a[j+1])

{

t=a[j+1];

a[j+1]=a[j];

a[j]=t;

}

}

}

}

}

void OutputArray(int a[],int n)

{

int i;

for(i=0;in;i++)

{

printf("%d,",a[i]);

}

}

int main()

{

int i,n,*a;

char msg[]={-56,-25,-71,-5,-78,-55,-60,-55,-93,-84,-57,-21,-72,-8,-50,

-46,50,48,48,-78,-58,-72,-69,-93,-95,0};

printf("%s\n\n",msg);

printf("请输入要随机产生的数组的元素个数:");

scanf("%d",n);

a=(int*)calloc(n,sizeof(int));

RandonArray(a,n);

printf("%s排序前数组各元素的值是:\n",shengxu ? "升序" : "降序");

OutputArray(a,n);

SortArray(a,n);

printf("\n%s排序后数组各元素的值是:\n",shengxu ? "升序" : "降序");

OutputArray(a,n);

free(a);

printf("\n");

system("PAUSE");

return EXIT_SUCCESS;

}

c语言数组作业

1.void main()

{

int a[10]={12,8,20,15,28,32,38,45,51,65};

int b[10]={20,13,29,22,37,40,49,56,62,78};

int c[10];

int i=0;

printf ("\t进价\t销售价\t利润价\n");

for(i=0;i10;i++)

{

c[i]=b[i]-a[i];

printf("商品%d:\t%d\t%d\t%d\n",i+1,a[i],b[i],c[i]);

}

}

2.void main()

{

int num[50];

int i;

printf("请输入数据:\n");

for(i=0;i50;i++)

{

scanf("%d",num[i]);

}

printf("输入完毕!\n");

int maxValue=num[0],maxPosition=1;

int minValue=num[0],minPosition=1;

for(i=0;i50;i++)

{

if(num[i]maxValue)

{

maxValue=num[i];

maxPosition=i+1;

}

if(num[i]minValue)

{

minValue=num[i];

minPosition=i+1;

}

}

printf("最大值:%d,最小值:%d,\n下标分别为:%d,%d\n",maxValue,minValue,maxPosition,minPosition);

}

这个没有考虑数值重复的问题,如果数值有重复的,在求下标的时候需定义数组来存

3.大致过程同第二题,可以自己改下