第3题
从键盘任意输入10个整数,计算并输出最大值和最小值及其它们在数组中的下标位置。按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 程序运行结果示例1: Input 10 numbers:1 2 3 4 5 6 7 8 9 10↙ max=10,pos=9 min=1,pos=0 程序运行结果示例2: Input 10 numbers:2 4 5 6 8 10 1 3 5 7 9↙ max=10,pos=5 min=1,pos=6 #include <stdio.h> int FindMax(int a[], int n, int *pMaxPos); int FindMin(int a[], int n, int *pMinPos); int main() { int a[10], maxValue, maxPos, minValue, minPos, i; printf("Input 10 numbers:"); for (i=0; i<10; i++) { scanf("%d", &a[i]); 输入10个数 } maxvalue="FindMax(a," 10, _________); 找最大值及其所在下标位置 minvalue="FindMin(a," 找最小值及其所在下标位置 printf("max="%d,pos=%d\n"," maxvalue, maxpos); printf("min="%d,pos=%d\n"," minvalue, minpos); return 0; 函数功能:求有n个元素的整型数组a中的最大值及其所在下标位置,函数返回最大值 int findmax(int a[], n, *pmaxpos) i, max; max="a[0];" 假设a[0]为最大值 __________; 假设最大值在数组中的下标位置为0 for (i="1;" i if (a[i]> max) { max = a[i]; __________; //pMaxPos指向最大值数组元素的下标位置 } } return max ; } //函数功能:求有n个元素的整型数组a中的最小值及其所在下标位置,函数返回最小值 int FindMin(int a[], int n, int *pMinPos) { int i, min; min = a[0]; //假设a[0]为最小 __________; //假设最小值在数组中的下标位置为0 for (i=1; i<10; i++) { if (a[i] min) min="a[i];" __________; pminpos指向最小值数组元素的下标位置 } return ;> A、第13行:&maxPos 第14行:&minPos 第25行:*pMaxPos = 0 第32行:*pMaxPos = i 第43行:*pMinPos = 0 第50行:*pMinPos = i
B、第13行:maxPos 第14行:minPos 第25行:pMaxPos = 0 第32行:*pMaxPos = i 第43行:pMinPos = 0 第50行:*pMinPos = i
C、第13行:maxPos 第14行:minPos 第25行:pMaxPos = 0 第32行:pMaxPos = i 第43行:pMinPos = 0 第50行:pMinPos = i
D、第13行:&maxPos 第14行:&minPos 第25行:pMaxPos = 0 第32行:pMaxPos = i 第43行:*pMinPos = 0 第50行:*pMinPos = i
第4题
从键盘任意输入10个整数,计算并输出最大值和最小值及其它们在数组中的下标位置。按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 程序运行结果示例1: Input 10 numbers:1 2 3 4 5 6 7 8 9 10↙ max=10,pos=9 min=1,pos=0 程序运行结果示例2: Input 10 numbers:2 4 5 6 8 10 1 3 5 7 9↙ max=10,pos=5 min=1,pos=6 #include <stdio.h> int FindMax(int a[], int n, int *pMaxPos); int FindMin(int a[], int n, int *pMinPos); int main() { int a[10], maxValue, maxPos, minValue, minPos, i; printf("Input 10 numbers:"); for (i=0; i<10; i++) { scanf("%d", &a[i]); 输入10个数 } maxvalue="FindMax(a," 10, _________); 找最大值及其所在下标位置 minvalue="FindMin(a," 找最小值及其所在下标位置 printf("max="%d,pos=%d\n"," maxvalue, maxpos); printf("min="%d,pos=%d\n"," minvalue, minpos); return 0; 函数功能:求有n个元素的整型数组a中的最大值及其所在下标位置,函数返回最大值 int findmax(int a[], n, *pmaxpos) i, max; max="a[0];" 假设a[0]为最大值 __________; 假设最大值在数组中的下标位置为0 for (i="1;" i if (a[i]> max) { max = a[i]; __________; //pMaxPos指向最大值数组元素的下标位置 } } return max ; } //函数功能:求有n个元素的整型数组a中的最小值及其所在下标位置,函数返回最小值 int FindMin(int a[], int n, int *pMinPos) { int i, min; min = a[0]; //假设a[0]为最小 __________; //假设最小值在数组中的下标位置为0 for (i=1; i<10; i++) { if (a[i] min) min="a[i];" __________; pminpos指向最小值数组元素的下标位置 } return ;> A、第13行:&maxPos 第14行:&minPos 第25行:*pMaxPos = 0 第32行:*pMaxPos = i 第43行:*pMinPos = 0 第50行:*pMinPos = i
B、第13行:maxPos 第14行:minPos 第25行:pMaxPos = 0 第32行:*pMaxPos = i 第43行:pMinPos = 0 第50行:*pMinPos = i
C、第13行:maxPos 第14行:minPos 第25行:pMaxPos = 0 第32行:pMaxPos = i 第43行:pMinPos = 0 第50行:pMinPos = i
D、第13行:&maxPos 第14行:&minPos 第25行:pMaxPos = 0 第32行:pMaxPos = i 第43行:*pMinPos = 0 第50行:*pMinPos = i
第6题
下面程序的功能是从键盘输入10个整数,用函数编程实现计算其最大值和最小值,并互换它们所在数组中的位置。程序运行结果如下: Input n(n<=10):10↙ 0 1 2 3 4 6 7 9 10 input numbers:1 –2 -1 ↙ exchange results: -2 按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 #include> void ReadData(int a[], int n); void PrintData(int a[], int n); void MaxMinExchang(int a[], int n); void Swap(int *x, int *y); int main() { int a[10], n; printf("Input n(n<=10):"); scanf("%d", &n); printf("input %d numbers:", n); readdata(a, maxminexchang(a, printf("exchange results:"); printdata(a, return 0; } * 函数功能:输入数组a的n个元素值 void readdata(int a[], int n) { i; for (i="0;" i i++) &a[i]); 函数功能:输出数组a的n个元素值 printdata(int printf("%5d", a[i]); printf("\n"); 函数功能:将数组a中的最大数与最小数位置互换 maxminexchang(________, maxvalue="a[0]," minvalue="a[0]," maxpos="0," minpos="0;" if (a[i]> maxValue) { maxValue = _______; maxPos = ____; } if (a[i] < minValue) { minValue = a[i]; minPos = i; } } Swap(________________); } /* 函数功能:两整数值互换 */ void Swap(int *x, int *y) { int ________; temp = *x; _________; *y = temp; }
A、第41行: int a[] 第49行: a[i] 第50行: i 第58行: &a[maxPos], &a[minPos] 第64行: temp 第66行: *x = *y
B、第41行: int a 第49行: a[i] 第50行: i 第58行: a[maxPos], a[minPos] 第64行: temp 第66行: *x = *y
C、第41行: int a[] 第49行: a[0] 第50行: 0 第58行: &a[maxPos], &a[minPos] 第64行: *temp 第66行: x = y
D、第41行: int a[] 第49行: a[n-1] 第50行: n-1 第58行: *a[maxPos], *a[minPos] 第64行: &temp 第66行: x = y
第7题
#include"stdio.h"
main()
{int i,a[20],s,n;
s=n=0:
for(i=0;i<20;i++)scanf("%d",&a[i])
for(i=0;i<20;i++)
{if(a[i]<0)break;
S+=a[i];n++;
}
printf("s=%d\t,n=%d\n",s,n);
}
错误:______
改正:______
参考答案:错误
第9题
从键盘输入6个待排序的数据存放到数组a中,使用冒泡排序的方法将该数组进行升序排序。main函数中从键盘输入6个数据给数组a,冒泡排序后输出结果到屏幕上。源程序命名为a22.c。 “冒泡法排序”的思想是:依次比较相邻的两个数,将小数放在前面,大数放在后面。 即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结束,将最大的数放到了最后。 在第二趟:仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在倒数第二的位置上得到一个新的最大数(其实在整个数列中是第二大的数)。如此下去,重复以上过程,直至最终完成排序。 【测试数据与运行结果】 第一组 请输入6个整数: 输入:78 76 90 5 45 53 输出:升序排序后的数组是: 5 45 53 76 78 90 第二组 请输入6个整数: 输入:8 2 6 7 1 3 输出:升序排序后的数组是: 1 2 3 6 7 8 第三组 请输入6个整数: 输入:5 4 3 2 1 0 输出:升序排序后的数组是: 0 1 2 3 4 5 #include "stdio.h" int main( ) {int a[128], i, j, n=6,temp; printf("请输入6个整数:\n"); for(i=0; i<n; i++) scanf("%d",&a[i]); 【请在此处完善程序】 for(i="0;" for(j="0;" j++) if (a[j]>a[j+1]) { temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } printf("升序排序后的数组是:\n"); fprintf(fp,"升序排序后的数组是:\n"); for( i=0;i<n;i++) printf("%5d",a[i]);>
第10题
下面程序的功能是从键盘任意输入10个整数,用指针变量作函数参数编程计算最大值和最小值,并返回它们所在数组中的位置。 例如,程序的一组运行结果如下: Input 10 numbers: -1 2 3 45 92 8 9 12 7 8↙ Max=92,Position=4,Min=-1,Position=0 按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。#include <stdio.h> int FindMax(int num[], int n, int *pMaxPos); int FindMin(int num[], int n, int *pMinPos); int main() { int num[10], maxValue, maxPos, minValue, minPos, i; printf("Input 10 numbers:\n"); for (i=0; i<10; i++) { scanf("%d", &num[i]); 输入10个数 } maxvalue="FindMax(num," 10, &maxpos); 找最大值及其所在下标位置 minvalue="FindMin(num," &minpos); 找最小值及其所在下标位置 printf("max="%d,Position=%d,Min=%d,Position=%d\n"," maxvalue, maxpos, minvalue, minpos); return 0; 函数功能:求有n个元素的整型数组num中的最大值及其所在下标位置,函数返回最大值 int findmax(int num[], n, _________) i, max; max="num[0];//假设num[0]为最大值" ___________; 假设最大值在数组中的下标位置为0 for (i="1;" i if (num[i]> max) { max = num[i]; ____________; //pMaxPos指向最大值数组元素的下标位置 } } return ________ ; } //函数功能:求有n个元素的整型数组num中的最小值及其所在下标位置,函数返回最小值 int FindMin(int num[], int n, __________) { int i, min; min = num[0]; //假设num[0]为最小 ____________; //假设最小值在数组中的下标位置为0 for (i=1; i<10; i++) { if (num[i] min) min="num[i];" ____________; pminpos指向最小值数组元素的下标位置 } return ______ ;> A、int *pMaxPos *pMaxPos = 0 *pMaxPos = i max int *pMinPos *pMinPos = 0 *pMinPos = i min
B、int *pMaxPos pMaxPos = 0 pMaxPos = i max int *pMinPos pMinPos = 0 pMinPos = i min
C、int pMaxPos pMaxPos = 0 pMaxPos = i max int pMinPos pMinPos = 0 pMinPos = i min
D、int pMaxPos *pMaxPos = 0 *pMaxPos = i *pMaxPos int pMinPos *pMinPos = 0 *pMinPos = i *pMinPos
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!