已知整型数组a中有若干元素的值为零,编写函数int func(int *a, int n),将a中的零移至数组后面,非零整数移至数组前面并从小到大排序。形参n表示数组中元素的个数,函数返回原数组中第一个值为零的元素的下标。在main函数中调用该函数。
2条回答 默认 最新
- fuill 2021-12-20 20:48关注
#include <stdio.h> int func(int *a, int n) { int j,k,h=n-1; int pos=-1; for(j=0;j<n;j++) { if(a[j]==0) { pos=j; break; } } for(j=0;j<h;j++) { if(a[j]==0) { a[j]=a[h]; a[h]=0; h--; } } j=0; while(j<h-1) { k=0; while(k<h-1) { if(a[k]>a[k+1]) { int tem=a[k]; a[k]=a[k+1]; a[k+1]=tem; } k++; } h--; } return pos; } int main() { int n=10; int j; int t[10]= {3,6,6,0,7,2,5,9,0,1}; for(j=0; j<n; j++) { printf("%d ",t[j]); } printf("\n"); printf("\n%d\n",func(t,n)); for(j=0; j<n; j++) { printf("%d ",t[j]); } printf("\n"); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 2
悬赏问题
- ¥50 adb连接不到手机是怎么回事?
- ¥15 vs2022无法联网
- ¥15 TCP的客户端和服务器的互联
- ¥15 VB.NET操作免驱摄像头
- ¥15 笔记本上移动热点开关状态查询
- ¥85 类鸟群Boids——仿真鸟群避障的相关问题
- ¥15 CFEDEM自带算例错误,如何解决?
- ¥15 有没有会使用flac3d软件的家人
- ¥20 360摄像头无法解绑使用,请教解绑当前账号绑定问题,
- ¥15 docker实践项目