第2题
#include<stdlib.h>
#include<stdio.h>
void fun(int a[],int n, int *max, int *d)
{ int i;
*max=a[0];
*d=0;
for(i=0;【15】;i++)
if(*max<【16】)
{*max=a[i];*d=i;}
}
main()
{ int i, x[20], max, index, n=10;
randomize();
for(i=0;i<n;i++)
{
x[i]=rand()%50; printf("%4d",x[i]);
}
printf("\n");
fun(x,n,&max,&index);
printf("Max=%5d,Index=%4d\n",max,index);
}
第3题
主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
include<stdlib.h>
include<stdio.h>
void fun(int a[],int n, int *max,int *d)
{
}
main()
{
int i, x[20], max, index, n=10;
randomize();
for(i=0; i<=n; i++)
{
x[i]=rand()%50;
printf("%4d",x[i]);
/*输出一个随机数组*/
}
printf("\n");
fun(x,n,&max,&index);
printf("Max=%5d,Index=%4d\n",max,index);
}
第4题
第5题
第6题
A.任何一个一维数组的元素在引用时,其下标可以是整型、实型或字符型常量
B.一维数组的元素实质上就是一个变量,代表内存中的一个存储单元
C.如果要引用数组中的每一个元素,则直接使用该数组名称即使
D.以上都不对
第7题
一维数组a保存了n个整数(下标为0的空间未使用),下面是一个改进的起泡排序函数,实现对数组a中的n个整数进行升序排序。具体实现过程:在正反两个方向交替扫描,即第一趟把最大的整数放到最后,第二趟把最小的整数放在最前,如此反复进行,直至完成排序。在空格处补充代码,完成上述功能。 #define TRUE 1 #define FALSE 0 void DSort(int a[ ], int n) // a[0]未保存元素,对a[1..n]中的元素进行排序 { int bottom = 1; int top = n; int swapped = TRUE; int temp,i; int bound = 0; //记录已经排序的边界 while(swapped) // 如果元素未交换,则已经完成排序 { 1 ; for(i = bottom; i < top; i++) { if(a[i] > a[i+1]) { temp = a[i]; a[i] = a[i+1]; a[i+1] = temp; swapped = TRUE; bound = i; } } top = bound; for(i = top; i > bottom; i --) { if( 2 ) { temp = a[i]; a[i] = a[i-1]; a[i-1] = temp; swapped = TRUE; bound = i; } } 3 ; } }
第9题
第10题
编写程序,输出一维数组a中的元素最小值及其下标。 编程提示: 1.定义一个整型变量存放最小值下标,将其初始化为0 ,例如:int p=0;即从数组第零个元素开始判断。 2.通过循环,依次判断数组中的每一个元素a[i]是否小于a[p],如果是,则将p和a[p]的值作相应的改变。/* c6-5.c 输出一维数组中元素的最小值及其下标*/ #include "stdio.h" int main( ) { int i,m,p,a[10]={9,8,7,6,1,3,5,18,2,4}; /* m为最小值,p为其下标 */ m=a[0]; p=0; for(i=1;i<10;i++) if { ; p="i;}" * 请补充完整此语句 printf("%d,%d\n",a[p],p); 输出一维数组a中的最小值及其下标 return 0;>
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!