|
![]() | 作者: baobao [gnijnil]
![]() |
登录 |
有一数组,内放10个整数,要求找出最小的数和它的下标,然后把它和数组中最前面的元素对换。 下标要怎么找出来了。头痛啊。。 ![]() main() { int i,j,k=0,l,a[10]={80,40,60,20,100,10,30,50,70,90}; clrscr(); for(i=0;i<10;i++) printf("%d ",a[i]); printf("\n"); j=a[0]; for(i=1;i<10;i++) if(j>a[i]) { j=a[i]; k++; /*这个帮我改了一下。我实在想不出来了 ![]() } printf("i==%d ",k); l=a[0]; a[0]=a[k]; a[k]=l; for(i=0;i<10;i++) printf("%d ",a[i]); } 我用k做下标。 [此贴被 286(unique) 在 04月20日09时15分 编辑过] |
地主 发表时间: 05-04-19 18:46 |
![]() | 回复: lida1818 [lida1818] ![]() |
登录 |
k=i; |
B1层 发表时间: 05-04-19 19:11 |
![]() | 回复: baobao [gnijnil] ![]() |
登录 |
对啊。。。。 |
B2层 发表时间: 05-04-20 15:38 |
![]() | 回复: llk2005 [llk2005] ![]() |
登录 |
我的代码乱了一些 可是 能完成你的要求 如下: #include<stdio.h> int small(int nbr[],int len); main() { int nbr[10]; int i; printf("Enter 10 numbers please:"); for(i=0;i<10;i++){ scanf("%d",&nbr[i]);} small(nbr,10); } int small(int nbr[],int len) { static int k; int x=0,sm=3276; int m=nbr[0]; for(;x<len;x++) { if(nbr[x]<=sm) { sm=nbr[x]; k=x; } } nbr[0]=nbr[k]; nbr[k]=m; printf("%d\n",k); for(int d=0;d<len;d++) { printf("%d\t",nbr[d]); } return 0; } 我懒得解释 你自己看吧 在Dev-c++下 调试成功 由于不能传附件 QQ群:1918900的群共享里有这个exe文件 |
B3层 发表时间: 05-04-22 19:48 |
![]() | 回复: llk2005 [llk2005] ![]() |
登录 |
也不知道你 看了 没有 也不留个言 没礼貌![]() ![]() |
B4层 发表时间: 05-04-26 18:02 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号