c语言数组a{10}={1};用循环插入9个数,在插入时要求按从小到大插入

作者&投稿:锁嵇 (若有异议请与网页底部的电邮联系)
C语言:把一个数插到已排好顺序的数组中,数组元素是9个~改程序,谢谢~

可以直接把它插到数组的最后,然后排序就行了。
#include #include#includeusing namespace std;int main(){ int num[10], i; for(i = 0; i < 10; i++) scanf("%d", &num[i]); sort(num, num + 10); for(i = 0; i < 10; i++) printf("%d%c", num[i], i == 9 ? '
' : ' '); return 0;}

void main()
{
int t,i,k;
static int a[7]={3,6,9,17,23,30,45}; /*数组大小不对*/
printf("input t
");
scanf("%d",&t);
for(i=0;i<7;i++)
if(t>a[i]&&t<a[i+1]) a[i+1]=t;
/*循环结束的时候,i=7,下面的一句实际上没有执行*/
for(k=i;k<7;k++) a[k+2]=a[k+1];
for(i=0;i<8;i++)
printf("%d ",a[i]);
getch();
}
---------------------------
void main()
{
int t,i,k;
static int a[8]={3,6,9,17,23,30,45};
printf("input t
");
scanf("%d",&t);
for(i=0;i<7;i++)
{
if(t>a[i]&&t<a[i+1])
/*a[i+1]=t;*/
break; /*找到位置就跳出循环,先不要插入,要先往后移,空出位置之后再插入*/
}
/*for(k=i;k<7;k++) a[k+2]=a[k+1]; */
/* 这里也有问题,往后搬移,应该从后往前搬*/
for(k=7;k>i+1;k--) a[k]=a[k-1];
/*插入*/
a[k]=t;
for(i=0;i<8;i++)
printf("%d ",a[i]);
getch();
}

#include <stdio.h>
void Move(int *q,int begin,int end){ //移动数组元素

int i= end;
while(i>=begin){
q[i+1] = q[i];
i--;
}
}
void Sort(int *q,int begin,int end,int data){ //插入排序法

int i = begin;
while(i <= end){
if(data<q[i]){
Move(q,i,end);
q[i] = data;
break;
}
i++;
}
if(i>end)
q[end+1] = data;
}
void Show(int *q,int begin,int end){
int i;
int static n=1;
printf("第%d次排序\n",n++);
for(i = begin;i<= end;i++){
printf("%d ",q[i]);
}
putchar('\n');
}
void main() {
int a[9],data,i;
scanf("%d",a);
for(i = 1 ; i < 9;i++){
scanf("%d",&data);
Sort(a,0,i-1,data);
Show(a,0,i);
}
}
//一维数组插入排序

//VC6.0调试

a{10}是神马东西?怎么没见过这种写法?


c语言编程题。 编程求数组a[10]的最大、最小和平均值。(要求用循环语句...
include <stdio.h>main(){ int i, a[10], min, max, aver; \/\/ 对数组赋初值 printf("输入10个整数:\\n"); for(i = 0; i < 10; i++) scanf("%d", &a[i]); \/\/求最大值和最小值和平均数 min = max = aver = a[0]; for(i = 1; i < 10...

c语言中inta[10]中数组a有几个元素
int a[10]表示定义一个长度为10的整型数组,数组下标从0到9,分别为a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]。

1.C语言一个数组a[10],&a,*a和a一样都是输出a[0]的地址吗? 2.int a...
1、&a有错误 a就是a[0]元素自己,不是地址 a是a[0]的地址,等于&a[0]2、a是下标第0行的行地址 a[0]就是a[0][0]的地址 (a + 0)就是a a就是a[0]&a[0][0]就是a[0][0]的地址 &a[0] 就是a a[0]是a[0][0]元素自己 ...

C语言将数组a中的10个整数降序排列并输出,如何编程?
include<stdio.h>int main(){int a[10]={1,3,5,7,9,8,4,6,0,2};int i,j,k;for(i=0;i<9;i++){for(j=i;j<10;j++){if(a[i]<a[j]){k=a[i];a[i]=a[j];a[j]=k;}}}for(i=0;i<10;i++)printf("%d ",a[i]);} ...

c语言设数组a[10]中的元素均为整数,用scanf函数给数组a进行初始化...
等几分钟,我来搞定 include<stdio.h> void main(){ int a[10],i,j,evencount=0,mean=0,sum=0;for(i=0;i<10;i++){ printf("please input number %d \\n",i);scanf("%d",&a[i]);if(a[i]%2==0)evencount++;sum+=a[i];} mean=sum\/10;printf("The even number is : ...

C语言(简单的)编写程序输入一维整形数组a[10],将其按由小到大排序后输 ...
这个应该用起泡法排序算法。include<stdio.h> int main(){ int a[10];int i,j,k;printf("input 10 numbers:\\n");for(i=0;i<10;i++){\/\/输入十个数,一次循环输入10次 scanf("%d",&a[i]);printf("\\n");\/\/换行 for(j=0;j<9;j++)\/\/从小到大换行经典方法四行 for(i=0;i<...

有一个整数数组a[10],调用fun()函数返回这个数组中最小的数
include <stdio.h>int fun(int a[10]){int i,min;min=a[0];for(i=1;i<10;i++)if(min>a[i]) min=a[i];return min;}int main(){int i,a[10];for(i=0;i<10;i++)scanf("%d",&a[i]);printf("%d",fun(a));return 0;} ...

c语言int a[10] 10是什么意思
inta表示a这个变量是整型,只能存放整数。inta【10】【10】指的是代表a的二维数组,是指向一个有十个元素的数组的指针,或者说a是具有十个元素的数组的首元素的地址,这十个元素,每个元素都是一个数组。

c语言 int a[10] 这个语句是什么意思?为什么不能用a++进行赋值?
int a[10]表示定义一个整形数组,而a++代表数组的地址指针向右移一位,指向a【1】,所以a++不能赋值,这是地址指针

c语言编程:数组a包含10个元素,键盘输入,然后对数组a倒置(即数值前后交 ...
include "stdio.h"int main(){ int a[10]={0};int i,tmp;printf("请输入10个整数:");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("数组a倒置后输出:\\n");for(i=0;i<5;i++){ tmp=a[i];a[i]=a[9-i];a[9-i]=tmp;} for(i=0;i<10;i++)printf("%d ",a[...

噶尔县18610271275: 用循环语句输入一位数组a[10]的值 -
东方苑调中: 部分程序如下:int a[10],i;for("i=0;i<=9;i++")scanf("%d",&a[i]); 这样就可以输入他的值了~!我刚学完C的,还算是比交熟悉~满意请采纳,谢谢~!

噶尔县18610271275: 用c语言编写 用循环语句输入一维数组a[10]的初值
东方苑调中: #include "stdio.h" main() { int i,a[10]; for(i=0;i<10;i++) scanf("%d",&a[i]); }

噶尔县18610271275: c语言编程题. 编程求数组a[10]的最大、最小和平均值.(要求用循环语句和输入函数对数组赋初值) -
东方苑调中: #include <stdio.h> main() { int i, a[10], min, max, aver; // 对数组赋初值 printf("输入10个整数:\n"); for(i = 0; i < 10; i++) scanf("%d", &a[i]); //求最大值和最小值和平均数 min = max = aver = a[0]; for(i = 1; i < 10; i++) { if(a[i] < min) min = a[i]; ...

噶尔县18610271275: 循环结构编个简单程序.使用for循环对数组a[10]中的元素冒泡法从大到小排序输出 -
东方苑调中: #include #define N 10 main() {int i,j,t;int a[N]={7,3,2,5,9,1,6,10,4,8};for(i=N;i>0;i--)for(j=0;j {if(a[j] {t=a[j];a[j]=a[j+1];a[j+1]=t;}}for(i=0;i printf("%d ",a[i]);printf("\n"); }

噶尔县18610271275: c语言怎么循环输入一个知道有几个的数组?比如我有一个int a[10],for(i=0;i<10; -
东方苑调中: 办法很多,提供一种作参考——#include "stdio.h" int main(void){ int a[10],i; for(i=0;i if(scanf("%d",a+i) break; if(i==9){ //在这里处理已输入的10个数 i=-1; } } return 0; }

噶尔县18610271275: c语言:定义一整型数组,用循环实现从键盘上给数组赋值,并用循环实现显示数组中的值 -
东方苑调中: 展开全部#include int main() { int a[10],i; for(i=0;i<10;i++) scanf("%d", &a[i]); for(i=0;i<10;i++) printf("%d\n", a[i]); return 0; }

噶尔县18610271275: C语言用数组和FOR循环设计一个计算不超过10个数相加之和的计算 -
东方苑调中: 要中断输入需要按Ctrl+D.#include int main() { double a[10] = { 0 }; int cnt = 0; double x = 0, sum = 0; while (scanf_s("%Lf", &x) && cnta[cnt++] = x; } for (int i = 0; isum += a[i]; } printf("%Lf\n", sum); return 0; }

噶尔县18610271275: 一个一维数组a(10)=(1,2,3,14,15,6,7,808,19,10),将数组进行逆序处理 -
东方苑调中: 逆序C语言:for( i=0;i for(j=i;j if(a[i] b=a[i]; a[i]=a[j]; a[j]=b; } } }

噶尔县18610271275: C语言中如何循环取数组中的值,比如数组中有10个数,从第一个取到第十个,再从第一个开始取,重复下去
东方苑调中: 两个for循环 int i,j,n,a[10]; for(i=0;i&lt;n;i++)//n是你要重复取数的次数 for(j=0;j&lt;10;j++) printf("%d\t",a[j]);

噶尔县18610271275: C语言数组用循环赋值,如何能在输入回车后自动停止赋值? -
东方苑调中: #include<stdio.h> int main() {printf("请输入一组数字:\n");int a[10];//定义是个数组for(int i=0;i<10;i++){scanf("%d",a[i]);if(a[i]==13)break;//回车的ascii值是13,当按回车的时候 就结束循环} }

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