c语言数组编程,输入n个整数,将这n个数按绝对值由大到小排序输出

作者&投稿:旁怡 (若有异议请与网页底部的电邮联系)
~

#include<stdio.h>

intmain()

intn,i,j,t;

inta[11];

scanf("%d",&n);

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

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

for(i=1;i<n;i++)

for(j=0;j<n-i;j++)

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

t=a[j];

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

a[j+1]=t;

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

if(i<n-1)

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

else

printf("%d\n",a[n-1]);

return0;



扩展资料:

printf函数定义

函数声明

intprintf(char*format...);

调用格式

printf("<格式化字符串>",<参量表>);

格式化字符串包含三种对象,分别为:

(1)字符串常量;

(2)格式控制字符串;

(3)转义字符。

字符串常量原样输出,在显示中起提示作用。输出表列中给出了各个输出项,要求格式控制字符串和各输出项在数量和类型上应该一一对应。其中格式控制字符串是以%开头的字符串,在%后面跟有各种格式控制符,以说明输出数据的类型、宽度、精度等。

格式控制字符串format

format--是字符串,包含了要被写入到标准输出stdout的文本。它可以包含嵌入的format标签,format标签可被随后的附加参数中指定的值替换,并按需求进行格式化。

printf的格式控制字符串format组成如下:

%[flags][width][.prec][length]type

即:%[标志][最小宽度][.精度][类型长度]类型

功能

在c语言中产生格式化输出的函数(定义在stdio.h中),其向未重定向终端(显示器、控制台等)输出字符。



参考资料:

百度百科——printf




用C语言编程:输入两个整型数组x[4],y[4]各元素的值,输出两个数组对应元...
include<stdio.h> void main (){ int x[4],y[4],sum[4],i;printf("enter X\\n");for(i=0;i<4;i++)\/*循环输入数组x*\/ { scanf("%d",x+i);} printf("enter Y\\n");\/*循环输入数组y*\/ for(i=0;i<4;i++){ scanf("%d",y+i);} for(i=0;i<4;i++)\/*循环求数组...

C语言编程用数组输入5个学生的成绩求出这些学生的平均成绩,并输出所 ...
usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespace_118_3._4 { classProgram { staticvoidMain(string[]args){ int[]a=newint[5]{78,90,86,75,92};doubles=0;for(inti=0;i<a.Length;i++){ if(a[0]<a[i]...

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语言怎么输入为数组赋值,求代码
include <stdio.h>int main(void){int a[5];printf("请输入5个数字:");for(int i=0;i<5;i++) { scanf("%d",&a[i]);} for(i=0;i<5;i++) { printf("%d ",a[i]);} printf("\\n");return 0;}

C语言 用结构体类型数组编程实现输入5个学生的学号姓名平时成绩期中成 ...
putchar ('\\n');}int main (void) {int stuNum,i;student stu[ARRAY_LEN];initInfo (stu,&stuNum);\/*输入、计算*\/puts ("请输入学生信息:");putchar ('\\n');for (i=0; i<stuNum; i++) {inputInfo (stu,i);calculationScore (stu,i);}putchar ('\\n');printf ("%d名学生...

c语言中向一个数组中输入十个数怎么输入
include <stdio.h> int main(){ int i;int n[10];for(i=0;i<10;i++){ scanf("%d",&n[i]);\/\/scanf要的是地址,这里必须用&n[i],或者n+的方法,但不能n[i]} printf("%d",n[1]);return 0;}

C语言数组 输入n个数据(n由操作者从键盘输入,n<20)怎么输,要排序_百 ...
include<stdio.h> include<malloc.h> void main(){ int n = 1, temp = 0;int i = 0, j = 0;printf("请输入个数n(n<20):");scanf("%d",&n);int *ptr = (int *)malloc(sizeof(int) * n);printf("请输入%d个数:\\n",n);for(i = 0; i < n; i++)scanf("%d"...

C语言数组输入。。
C语言数组输入是相同类型的、数量有限的若干个变量通过有序的方法组织起来的一种便于使用的形式。数组属于一种构造类型,其中的变量被称为数组的元素。数组元素的类型可以是基本数据类型,也可以是特殊类型和构造类型。在引用数组中的元素时,采用数组名[下标]的方式,将其中的每一个元素视为一个普通的...

c语言数组,怎么样从键盘上输入行数和列数?
你可以这样做:(以int型为例)int **a;int m,n,i;scanf("%d%d",&m,&n); \/\/输入你此次想要创建数组的行数和列数,储存在m和n中 a=(int**)malloc(m*sizeof(int*)); \/*malloc函数在stdlib.h里面,用的时候加入这个头文件*\/for(i=0;i<m;i++)a[i]=(int*)malloc(n*size...

度C语言编程序:用数组的方法实现程序,从键盘输入不超过50个字符,统计...
include <stdio.h>int main(){ char c[50]; int i,el=0,sp=0,nu=0,other=0; gets(c);\/\/输入字符串 for(i=0; i<strlen(c); i++)\/\/strlen返回字符串长度 { if((c[i]>='A' && c[i]<='Z')||(c[i]>='a' && c[i]<='z')) el++; else...

长兴县13420313814: c语言从键盘上输入N个整数保存在数组中,用选择法排序将其按升序排列并将结果显示 -
段干博他尔: #include <stdio.h> #include<stdlib.h> #define N 10 void main() { int i,j,temp; int *a=(int *)malloc(sizeof(int)*N);//因为你的N我不知道好大,所以就是这样定义数组. for(i=0;i<N;i++) { scanf("%d",&a[i]); } for(i=0; i<N-1; i++) {for(j=i+1; j<N; j++){if(...

长兴县13420313814: C语言,输入n个整数的数组,将最小值与第一个书交换,最大值与最后一个数交换,然后输出数组? -
段干博他尔: 你的程序没有问题,从某种意义上来说是正确的. 问题是你举的例子是最特殊的,数组4321,最大值4的位置max=0,最小值1的位置min=3.交换时,先是第一个元素a[0](4)跟最小的元素位置a[min](a[3]=1)进行交换,交换的结果是数组1324;接下来是a[3]跟a[max]交换,这时a[3]=4,而a[max]=a[0]=1,就是1与4交换,结果就成了1234.你会发现,它们又换回来了! 这个问题产生的原因,是max的值在第一次交换之后,已经不能代表最大值的真实位置了! 要解决这个问题,就把16-19行一起移动到13行之前.就可以了. 你可以试一下,有什么问题请留言.

长兴县13420313814: C语言.使用数组,编写程序完成从键盘顺序输入n个整数,首尾元素相互交换,然后将它们输出. -
段干博他尔: #include<stdio.h> void main() {int a[50];int i=0,j=0;int temp;printf("请输入数据,中间用空格间隔,用回车结束输入:\n");do{scanf("%d",&a[i++]);}while(getchar()()!='\n');//首尾交换temp =a[0];a[0] =a[i-1]a[i-1] = temp;///输出for(j=0;j<i;j++){printf("%3d ",a[j]);}printf("\n"); }///输入的时候这样输入: 1空格2空格3空格4回车

长兴县13420313814: c语言编程 从键盘中,输入N个整数给数组a求出整型数组a中N个数的平均值.并将大于平 -
段干博他尔: 下面是我写的输入十个整数的程序...给你参考下.望采纳 #include <stdio.h> main() { int i,a[10],max,min,b[10],j=0; float pin,sum=0; printf("输入十个整数:\n");for (i=0;i<10;i++)scanf("%d",&a[i]); for(i=0;i<10;i++) {sum+=a[i]; } printf(...

长兴县13420313814: c语言,如何将键盘输入的n个整数存入一个数组中,n的大小未知? -
段干博他尔: 这样来实现 #include<stdio.h> void main(){int a[50];int i=0,j=0;printf("请输入数据,中间用空格间隔,用回车结束输入:\n");do{scanf("%d",&a[i++]);}while(getchar()!='\n');for(j=0;j<i;){printf("%3d",a[j]);j++;if(j%5==0)printf("\n");}printf("\n");}

长兴县13420313814: 【急】c语言编程题目:输入n个整数,求这n个整数中的最大数,最小数和偶数平均数,并输出. -
段干博他尔: 这个最大数 就第一个数 和第二个数比较 那个大就赋值给max 再与下一个数值比较 最小数同理可得 偶数的话 只要数值对2取余为0的话就是 偶数 每出现一次偶数 就累加起来,也同样计数 最后累加和除以计数的最后值就是偶数平均值

长兴县13420313814: C语言:编写程序要求用户录入n个整数,并把这些整数存储在数组中,然后调用selection - sort函数进行排序. -
段干博他尔: #include#define N 100 void selection_sort(int a[],int n); int main() { int a[N],i,n; printf("Please the number:"); for(i=0;i { scanf("%d",&a[i]); if(a[i]=='\n') /*如此定义,遇到输入数字为10则提前结束输入*/ break; } n=i; selection_sort(a,n); printf("The ...

长兴县13420313814: C语言:从键盘输入n个整数并放到数组x中,编写一个函数,它将数组x中的元素颠倒后仍然存放在原数组中. -
段干博他尔: 这个可以用指针来完成,具体的代码如下:#include<stdio.h> void reversal( int *p, int n) {/* 用来将一个长度为n的数组中的元素颠倒*/ int i,j,tmp; i = 0; j = n - 1; while(i < j) { tmp = p[j]; p[j--] = p[i]; p[i++] = tmp; } } int main(void) { int x[1000]; int n; int i; ...

长兴县13420313814: 用C语言编写程序,输入一个正整数n(1<n<=10),再输入n个整数,将这n个数降序排列后输出(请用选择排序法 -
段干博他尔: #include "stdio.h"int main() {int i,j,n;int a[12];int min,mx;scanf("%d",&n);for(i=0;i<n;i++){scanf("%d",&a[i]);}for(i=0;i<n;i++){min=a[i];mx=i;for(j=i+1;j<n;j++){if(a[j]>min){min=a[j];mx=j;}}j=a[i];a[i]=a[mx];a[mx]=j;}for(i=0;...

长兴县13420313814: C语言程序设计: 任意输入n个整数,分别统计奇数的和、奇数的个数、偶数的和、偶数的个数. -
段干博他尔: 程序为: #include<stdio.h> void main() { int a[100],i,item,sum1,sum2,item1,item2;//sum1,sum2分别储存奇数、偶数之和,item1,item2分别表示奇数、偶数的个数 printf("请输入所要输入整数的个数:"); scanf("%d",&item); printf("请...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网