题目详情
当前位置:首页 > 职业培训考试
题目详情:
发布时间:2023-10-23 07:09:59

[填空题]有一个已排好序的数组,今输入一个数,要求按原来的顺序规律将它插入到数组中。算法是:假设排序顺序是从小到大,对输入的数,检查它在数组中哪个数之后,然后将比这个数大的数顺序后移一个位置,在空出的位置上将该数插入。请在程序中的空白处填上一条语句或一个表达式。
#define N 100
main( )
float a[N+1],x;
int i,p;
for(i=0;i<N;i++)
scanf("%f"&a[i]);
scanf("%f",&x);
for(i=0,p=N;i<N;i++)
if(x<a[i])
______;
break;
for(i=N-1;______;i-)
a[i+1]=a[i];
a[p]=x;
for(i=0;______;i++)
printf("%8.2f",a[i]);
if(i%5=0)
printf("/n");


更多"有一个已排好序的数组,今输入一个数,要求按原来的顺序规律将它插入到数组"的相关试题:

[填空题]有一个已排好序的数组,今输入一个数,要求按原来的顺序规律将它插入到数组中。算法是:假设排序顺序是从小到大,对输入的数,检查它在数组中哪个数之后,然后将比这个数大的数顺序后移一个位置,在空出的位置上将该数插入。请在程序中的空白处填上一条语句或一个表达式。
#define N 100
main( )
float a[N+1],x;
int i,p;
for(i=0;i<N;i++)
scanf("%f’,&x);
for(i=0,p=N;i<N;i++)
if(x<a[i])
【18】
for(i=N-1; 【19】 ;i-)
a[i+1]=a[i];
a[p]=x;
for(i=0; 【20】 ;i++)
printf("%8.2f’,a[i]);
if(i%5==0)
printf("/n");


[简答题]【程序2.1说明】
已知一个排好序的数组,现输入一个数,要求按原来的顺序规律,将它插入到数组中。
【程序2.1】
#include <stdioh>
#define N 100
void main( )

float a[N+l],x;
int i,p;
printf("输入已经排好序的数列: ");
for(i=0; i<N; i++)
scanf(%f",&a[i]);
printf("输入要插入的数:");
scanf("%f",&x);
for(i=0,p=N; i<N; i++)
if(x<a[i])

(1)
break;

for(i=N-1; i>=p; i--)
(2)
(3)
for(i=0; i<=N; i++)
prinff("%f/t",a[i]);

【程序2.2说明】
本程序用变量count统计文件中字符的个数。
【程序2.2】
#include <stdio.h>
#include <stdlib.h>
void main( )

FILE *fp;
long count=0;
if((fp=fopen("letter.txt","r"))==NULL)

printf("can not open file/n");
exit(0);

while(!feof(fp))

(4)
count++;

printf("count=%d/n",count);
(5)

[单项选择]用下列4种排序方法,对一个已排好序(由小到大)的序列进行由小到大排序时,选择( )方法最好。
A. 冒泡排序
B. 直接选择排序
C. 直接插入排序
D. 归并排序
[填空题]请补充main函数,该函数的功能是:把一个整数插入到一个已经按从小到大排序的数组中。插入后,数组仍然有序。 例如,在数组bb[N]={12,23,31,44,51,63,71,79,85,95}中插入93,结果为: bb[N]{11,21,31,41,51,61,7l,79,8l,93,95} 注意:部分源程序给出如下. 请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。 试题程序: #include<std/o. h> #define N 10 main( ) { int i,j; int n; int bb IN+l] ={ t2,23, 31, 44, 51, 63, 71, 79,85,95}; clrscr ( ); printf("/nInput n /n"); scanf ("%d", &n); printf ("/nn=%d ",n); printf("/n*** original list ***In"); for (i=0; i<N; i++) printf ("%4d ",bb [ii ); for (i=0; i<N; i++) { if (n<=bb [i ] ) { for(j=N; 【1】 ;j--) 【2】; bb [j] =n; 【3】; } if (i=N) bb[i]=n; printf("/n***** new list ******In"); for (i=0;i<N+l; i++) printf ("%4d ",bb [i]); }
[填空题]以下程序段的作用是首先按降序输入10个数到数组Y的前10个元素中,又输入一个YO插入到数组Y中,插入YO后Y中的数据仍按降序排列。请补充完该程序______。 Dim Y(1 To 11) For i =1 To 10 Y(i) = Val(InputBox(“请输入Y(i):”)) Next i X = Val(InputBox (“请输入x:”)) For i = 10 To 1 Step -1 If 【8】 Then Y(i + 1) = X Exit For End If Y (i + 1) =Y(i) Next i ’Print Y(10) For i =1 To 11 Print Y(i) Next I
[填空题]设有一个已按各元素的值排好序的线性表,长度为125,对给定的k值,用二分法查找与k相等的元素,若查找成功,则至少需要比较______次,至多需比较______次。
[单项选择]设有一个已按各元素的值排好序的顺序表(长度大于2),现分别用顺序查找法和二分查找法查找与给定值k相等的元素,比较的次数分别是s和b,在查找不成功情况下s和b的关系是( )。
A. s=b
B. s>b
C. s
D. s>=b
[填空题]以下程序调用fun函数把x中的值插入到a数组下标为k的数组元素中。主函数中,n存放a数组中数据的个数。请填空。
#include<stdio.h>
void fun(int s[],int *n,int k,int x)
int i;
for(i=*n-1;i>=k;i--)s______=s[i];
s[k]=x;
*n=*n+______;

main( )
int a[20]=1,2,3,4,5,6,7,8,9,10,11,i,x=0,k=6,n=11;
fun(a,&n,k,x);
for(i=0,i<n,i++)printf("%4d",a[i]);printf("/n");

我来回答:

购买搜题卡查看答案
[会员特权] 开通VIP, 查看 全部题目答案
[会员特权] 享免全部广告特权
推荐91天
¥36.8
¥80元
31天
¥20.8
¥40元
365天
¥88.8
¥188元
请选择支付方式
  • 微信支付
  • 支付宝支付
点击支付即表示同意并接受了《购买须知》
立即支付 系统将自动为您注册账号
请使用微信扫码支付

订单号:

截图扫码使用小程序[完全免费查看答案]
请不要关闭本页面,支付完成后请点击【支付完成】按钮
恭喜您,购买搜题卡成功
重要提示:请拍照或截图保存账号密码!
我要搜题网官网:https://www.woyaosouti.com
我已记住账号密码