网友您好, 请在下方输入框内输入要搜索的题目:

题目内容 (请给出正确答案)

阅读以下说明和C++代码,将解答写入对应栏内。

【说明】

请编写一个函数int SeqSearch(int list[],int start,int n,int key),该函数从start开始,在大小为n的数组list中查找key值,返回最先找到的key值的位置,如果没有找到则返回-1。请修改程序中画线部分的错误并将不同情况下的输出结果补充完整。

【程序】

文件search.cpp的内容如下:

include <iostream. h >

int SeqSearch( int list[ ] ,int start,int n,int key)

{

for(int i=start;i<=n;i++) //(1)

{

if( list[i] = key)//(2)

{

return i;

}

}

return -1;

}

void main( )

{

int A[10]

int key,count=0,pos;

cout <<" Enter a list of 10 integers:";

for(pos=0;pos<10;pos++)

{

cin >>A; //(3)

}

cout <<" Enter a key; ";

cin >> key;

pos=0;

while(( pos = SeqSearch ( A, pos, 10, key)) !=-1 )

{

count ++;

pos ++;

}

cout<<key<<"occurs" <<count<< (count!=1?" times":" time") <<" in the list,"

<< endl;

}

第一种情况:输入2 3 12 6 8 45 8 33 7输入key:8

输出:(4)

第二种情况:输入2 3 126 8 45 8 33 7输入k6y:9

输出:(5)


参考答案

更多 “ 阅读以下说明和C++代码,将解答写入对应栏内。【说明】请编写一个函数int SeqSearch(int list[],int start,int n,int key),该函数从start开始,在大小为n的数组list中查找key值,返回最先找到的key值的位置,如果没有找到则返回-1。请修改程序中画线部分的错误并将不同情况下的输出结果补充完整。【程序】文件search.cpp的内容如下:include <iostream. h >int SeqSearch( int list[ ] ,int start,int n,int key){for(int i=start;i<=n;i++) //(1){if( list[i] = key)//(2){return i;}}return -1;}void main( ){int A[10]int key,count=0,pos;cout <<" Enter a list of 10 integers:";for(pos=0;pos<10;pos++){cin >>A; //(3)}cout <<" Enter a key; ";cin >> key;pos=0;while(( pos = SeqSearch ( A, pos, 10, key)) !=-1 ){count ++;pos ++;}cout<<key<<"occurs" <<count<< (count!=1?" times":" time") <<" in the list,"<< endl;}第一种情况:输入2 3 12 6 8 45 8 33 7输入key:8输出:(4)第二种情况:输入2 3 126 8 45 8 33 7输入k6y:9输出:(5) ” 相关考题
考题 ●试题七阅读以下说明和C++代码,将解答写入答题纸的对应栏内。【说明】请编写一个函数int SeqSearch(int list[],int start,int n,int key),该函数从start开始,在大小为n的数组list中查找key值,返回最先找到的key值的位置,如果没有找到则返回-1。请修改程序中画线部分的错误并将不同情况下的输出结果补充完整。【程序】文件search.cpp的内容如下:#include iostream.hint SeqSearch(int list[],int start,int n,int key){for(int i=start;i=n;i++)// (1){if(list[i]=key) // (2){return i;}}return -1;}void main(){int A[10];int key,count=0,pos;cout" Enter a list of 10 integers: ";for(pos=0;pos10;pos++){cinA; // (3)}cout"Enter a key: ";cinkey;pos=0;while((pos=SeqSearch(A,pos,10,key))!=-1){count++;pos++;}coutkey" occurs "count(count!=1?" times":" time")" in the list."endl;}第一种情况:输入2 3 12 6 8 45 8 33 7 输入key:8输出: (4)第二种情况:输入2 3 12 6 8 45 8 33 7 输入key:9输出: (5)

考题 ●试题一阅读下列函数说明和C代码,把应填入其中n处的字句写在答卷的对应栏内。【函数1.1说明】函数strcpy(char*to,char*from)将字符串from复制到字符串to。【函数1.1】void strcpy(char*to,char*from){while( ( 1 ) );}【函数1.2说明】函数merge(int a[ ],int n,int b[ ],int m,int *c)是将两个从小到大有序数组a和b复制合并出一个有序整数序列c,其中形参n和m分别是数组a和b的元素个数。【函数1.2】void merge(int a[ ],int n,int b[ ],int m,int *c){ int i,j;for(i=j=0;i<n j<m;)*c++=a[i]<b[j]? a[i++]:b[j++];while( (2) )*c++=a[i++];while( (3) )*c++=b[j++];}【函数1.3说明】递归函数sum(int a[ ],int n)的返回值是数组a[ ]的前n个元素之和。【函数1.3】int sum(int a[ ],int n){ if(n>0)return (4) ;else (5) ;}

考题 阅读以下说明和Java代码,将解答写入对应栏内。【说明】下面程序的功能是显示已定义的一个3行3列的二维数组每行的元素,并求所有元素的和并输出。请在程序的每条横线处填写一个适当的语句,使程序的功能完整。public class Arrayt(1) static (2) main(String args[]){int sum=0;int [][] = t {11,12,13}, {21,22,23},{31,32,33}};for(int i=0; (3) i++){System. out. print("b["+i+"]:");for(int j=0;(4) j++)System. out. print(b[i] [j] +" ");(5)}System. out. println ();}System. out. println("sum="+sum);}}

考题 请编写实现void * malloc(int)内存分配函数功能一样的代码。

考题 阅读下列程序说明和C代码,将应填入(n)处的字句写在对应栏内。[函数2.1说明]函数void find(int *a, int n, int * max, int * min)的功能是在长度为n的整型数组a中,查找最大元素和最小元素的下标。main()中给出了调用find函数的一个实例。[函数2.1]include<stdio.h>void find(int *a, int n,int *max,int * min){ int i;*max =* min=0;for(i=1;i<n;i+ +)if(a[i]>a[* max]) (1);else if(a[i]<a[*min]) (2);return;main(){ int a[]={4,6,8,9,0,6},max,min;find(a,6,(3));printf("%5d%5d\n", max,min);}[函数2.2说明]以下程序用来对从键盘上输入的两个字符串进行比较,然后输出两个字符串前端的公共部分。例如:输入的两个字符串分别是abcdefg和abceef,则输出为abc。[函数2.2]include <stdio.h>main(){ char str1[100],str2[100],str[100],c;int i=0,s;printf("\nInput string 1:");gets(str1);printf("\nInput string 2:");gets(str2);while(((4))(str1[i]!='\0')(str2[i]!='\0')){(5);i++;}printf("%s\n",str);}

考题 阅渎以下说明和C代码,回答问题,将解答写入答题纸的对应栏内。 【说明】函数bubbleSort(int arr [ ] int n, int (*compare)(int, int)的功能是根据调用时传递的比较函数 compare 对数組arr的前n个元素进行排序。 【C代码】 #define swap(a,b){a=a^b;b=a^b;a=a^b //交换a与b 的值int less(int x, int y){ return((xy)?1: 0);} void bubble Sort(int arr[ ], int n, int (*compare)(int, int)){ int i,j; int swapped= 1; for( i= 0; swapped; 1++) { swapped =0; for(j=0; j 【问题1】设有如下数组定义:int data1[ ]={4,2.6.3,1};int data2[ ]={4,2,6.3,1}int datas3[ ]={4,2,6.3,1}请分别给出下面的函数调用执行后,数组 data1、data2和 data3 各自的元素序列。(1)bubble Sort(data1, 5, less);(2)bubbleSort(data2, 5, larger)(3)bubbleSort(data3, 3, larger)

考题 阅读以下说明和Java程序,填写程序中的空(1)~(6),将解答写入答题纸的对应栏内。 【说明】 以下Java代码实现一个简单绘图工具,绘制不同形状以及不同颜色的图形。部分接口、类及其关系如图5-1所示。 【Java代码】 interface?DrawCircle?{? //绘制圆形 public(1) ;}class?RedCircle?implements?DrawCircle?{? ?//绘制红色圆形???????public?void?drawCircle(int?radius,intx,?int?y)??{????????????System.out.println("Drawing?Circle[red,radius:"?+?radius?+",x:"?+?x?+?",y:"?+y+?"]");???????}}class?GreenCircle?implements?DrawCircle?{????//绘制绿色圆形??????public?void?drawCircle(int?radius,?int?x,int?y)?{???????????System.out.println("Drawing?Circle[green,radius:"?+radius+",x:?"?+x+?",y:?"?+y+?"]");??????}}abstract?class?Shape?{????//形状? protected? ? (2)???;? ? public?Shape(DrawCircle?drawCircle)?{? ?this.drawCircle=?drawCircle;? ? ? public?abstract?void?draw();}class?Circle?extends?Shape?{? //圆形? ?private?int?x,y,radius;? public?Circle(int?x,int?y,intradius,DrawCircle?drawCircle)?{? ?(3)???;? this.x?=?x;? ? ? this.y?=?y;? ?this.radius?=radius;? }? ? ?public?void?draw()?{? ? drawCircle.? ?(4)? ?;? ? ? }}public?class?DrawCircleMain?{? public?static?void?main(String[]?args)?{? Shape?redCircle=new?Circle(?100,100,10,? (5) );//绘制红色圆形? Shape?greenCircle=new?Circle(200,200,10,(6) );//绘制绿色圆形? ?redCircle.draw(); greenCircle.draw();? ?}}

考题 阅读下列说明和C++代码,填写程序中的空(1)~(6),将解答写入答题纸的对应栏内。 【说明】 以下C++代码实现一个简单绘图工具,绘制不同形状以及不同颜色的图形。部分类及其关系如图6-1所示。 【C++代码】 #include?#include?using?namespace?std;class?DrawCircle?{??????//绘制圆形,抽象类? ? ? public: (1);//定义参数为?int?radius,?int?x,?inty? ?virtual~DrawCircle()?{?}};class?RedCircle:public?DrawCircle?{????//绘制红色圆形? ? ? ? public: void?drawCircle(intradius,?int?x,?int?y)?{cout??drawCircle?=?drawCircle;? }? ?virtual~shape()?{?}? public:? ?virtual?void?draw()?=?0;};class?Circle:public?Shape?{????//圆形? ? private:? ? ?int?x,y,radius;? ? public:? Circle(int?x,inty,int?radius,DrawCircle?*drawCircle)? (3)? {? this->x?=?x;? ?this->y?=?y;? ? this->radius?=?radius; }? ? ? public:? void?draw(){? drawCircle?-> (4); }};int?main(){Shape?*redCirclenew?Circle(100,100,10,????(5)????);//绘制红色圆形? Shape?*greenCircle=new?Circle(100,100,10, (6)??);//绘制绿色圆形redCircle >draw();? ?greenCircle?->draw();? ?return?0;}

考题 这道题是给使用C/C++语言的同学准备的。使用其他语言的同学,随便猜一项答案就好啦。 以下C/C++代码: void func(_______ , int); int main(){ int array[10][20]; int n; // 省略array和n的初始化 func(array, n); return 0; } 第1行的函数原型(函数声明)中,______部分的第一个参量应该是A.int [ ][ ]B.int **C.int *[20]D.int (*)[20]