搜题
网友您好,请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
提问人:网友shapeguy 发布时间:2022-01-06
[主观题]

阅读下列程序说明和C代码,填入(n)处。【说明】 幼儿园有n(<20)个孩子围成一圈分糖果。老师先随机

阅读下列程序说明和C代码,填入(n)处。

【说明】

幼儿园有n(<20)个孩子围成一圈分糖果。老师先随机地发给每个孩子若干颗糖果,

然后按以下规则调整:每个孩子同时将自己手中的糖果分一半给坐在他右边的小朋友。如共有8个孩子,则第1个将原有的一半分给第2个,第2个将原有的一半分给第3个,……,第8个将原有的一半分给第1个,这样的平分动作同时进行。若平分前,某个孩子手中的糖果是奇数颗,则必须从老师那里要一颗,使他的糖果数变成偶数。小孩人数和每个小孩的初始糖果数由键盘输入。下面的程序可求出经过多少次上述这样的调整,使每个孩子手中的糖果—样多,调整结束时每个孩子有糖果多少颗,在调整过程中老师又新增发了多少颗糖果。

【程序】

include <stdio.h>

define N 20

int allEqual (int a[ ],int n) /*检查每个孩子手中的糖果是否一样多*/

{ iht i;

for(i=1; i<n; i++)

if(a[O]!=a[i]) return O;

return 1;

}

int a[N], b[N];

void main ()

{ int i, n, addk, loopc;

printf("Enter n((20)\n"); scanf("%d", &n);

printf ("Enter data\n");

for(i=O; i(n; i++) scanf("%d", &a[i]);

addk=O;(1);

while (2){ /*平分循环*/

loopc++;

for (i=O; i (n; i++){ /*为一次调整作准备*/

if(a[i]%2) { a[i]++;(3); }

if (i<n-1) b[i+1]=a[i]/2; else(4)

a[i]/=2;

}

for(i=O; i<n; i++)(5); /*完成一次调整*/

}

printf("调整%d次\n", loopc); printf("每个孩子有%d颗糖果\n", a[0]);

printf("调整过程中新增发%d颗糖果。\n", addk); }

简答题官方参考答案 (由简答题聘请的专业题库老师提供的解答)
查看官方参考答案
更多“阅读下列程序说明和C代码,填入(n)处。【说明】 幼儿园有n(<20)个孩子围成一圈分糖果。老师先随机”相关的问题
第1题
阅读下列程序说明和C代码,把应填入其中n处的字句写在答卷的对应栏内。 【说明】 程序利用选择排序算

阅读下列程序说明和C代码,把应填入其中n处的字句写在答卷的对应栏内。

【说明】

程序利用选择排序算法对数组a中的N个整数按照从小到大的顺序排列,并将排序结果显示出来。

【程序】

define N 10

main()

{

void (1);

int i,a[N];

for(i=0;i<10,i++) /*输入*/

scanf(“%d”,&a[i]);

(2);

for(i=0;i<N,i++) /*输出*/

printf(“%3d”,a[i]);

}

void selectSon(int x[],int n)

{

int i,j,k,t;

for(int i=0; (3);i++)

{

k=i;

for(j=i+1;j<n;j++)

if (4) k=j;

if (5)

{t=x[i];x[i]=x[k];x[k] =t;}

}

}

点击查看答案
第2题
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。【说明】 以下程序的功能是:从键盘上输

阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。

【说明】

以下程序的功能是:从键盘上输入一个字符串,把该字符串中的小写字母转换为大写字母,输出到文件test.txt中,然后从该文件读出字符串并显示出来。

【程序】

include < stdio. h >

main()

{ FILE * fp;

char str[100]; int i=0;

if((fp=fopen("text.txt"(1))) ==NULL)

{ printf("can't open this file. \n") ;exit(0) ;}

printf(" input astring: \n" ); gest(str);

while(str[i] )

{ if(str[i] >='a' && str[i] <='z')

str[i]=(2);

fputc(str[i],(3));

i++;

}

fclose(fp);

fp=fopen(" test.txt",(4));

fgets(str, 100, fp);

printf("%s\n" ,str);

(5);

}

点击查看答案
第3题
阅读下列程序说明和c代码,将应填入(n)处的字句写在对应栏内。[说明] 下面的程序利用递归算法计算x

阅读下列程序说明和c代码,将应填入(n)处的字句写在对应栏内。

[说明]

下面的程序利用递归算法计算x和y的最大公约数。

[函数2.1]

main ()

{ int x,y,k,t;

scanf(" % d% d" , &x, &y);

if(x>y) { t=x;x=y; y=t;}

(1);

while(k! =0){

y=x;

(2);

k=y%x;

}

prinff("% d" ,x); }

[函数2.2说明]

函数fun(char *str,char *substr的功能是计算子串sugbstr在串str中出现的次数。

[函数2.2]

fun(ehar * str, char * substr)

{ int x,y,z;

(3);

for(x=0;str[ x] ! = '\O';x + + )

for(y=x,z=0;sabstr[z] = =str[y];(4),y+ +)

if((5)= ='\0') {

num + +;

break;

}

return(num);

}

点击查看答案
第4题
●试题八 阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 以下程

●试题八

阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。

【说明】

以下程序的功能是:从键盘上输入一个字符串,把该字符串中的小写字母转换为大写字母,输出到文件test.txt中,然后从该文件读出字符串并显示出来。

【程序】

#include<stdio.h>

main()

{FILE*fp;

charstr[100];inti=0;

if((fp=fopen("text.txt" (1) ))==NULL)

{printf("can't open this file.\n");exit(0);}

printf("input astring:\n");gest(str);

while(str[i])

{if(str[i]>=′a′ && str[i]<=′z′)

str[i]= (2) ;

fputc(str[i], (3) );

i++;

}

fclose(fp);

fp=fopen("test.txt", (4) );

fgets(str,100,fp);

printf("%s\n",str);

(5) ;

}

点击查看答案
第5题
阅读以下说明及Visual Basic 程序代码,将应填入(n)处的字句写在对应栏内。[程序5.1说明] 下列程序

阅读以下说明及Visual Basic 程序代码,将应填入(n)处的字句写在对应栏内。

[程序5.1说明]

下列程序运行时,当单击窗体后,从键盘输入一个字符,判断该字符是字母字符、数字字符还是其他字符,并做相应的显示。窗体上无任何控件,并禁用Ase和Chr函数,Select Case语句中禁用枚举值。

[Visual Basic代码]

Private Sub Form. Load ()

Dim x As String*1

X=(1) (“请输入单个字符”,“字符”)

Select Case UCase ((2) )

Case (3)。

Print X+“是字母字符”

Case (4)

Print X+ “是数字字符”

Case Else

Print X+“是其他字符”

End Select

[程序5.2说明]

在窗体上画一个名称为Timer1的计时器和一个名称为Labe11的标签。当运行程序后,将在标签中显示当前时间的数字时钟(包括时:分:秒)。

[Visual Basic代码]

Private Sub Fom_Load ()

Timer1.Interval=1000

EndSub

Private Sub Timer1_ timer() (5)

EndSub

点击查看答案
第6题
阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明2.1】 以下C语言函数用二分插

阅读下列函数说明和C代码,将应填入(n)处的字句写在对应栏内。

【说明2.1】

以下C语言函数用二分插入法实现对整型数组a中n个数的排序功能。

【函数2.1】

void fun1 (int a[])

{ int i,j,k,r,x,m;

for(i=2;i<=n;i++)

{ (1);

k=1;r=i-1;

while(k<=r)

{ m=(k+r)/2;

if(x<a[m])r=m-1;

else (2);

}

for(j=i-1;j>=k;j--)

a[j+l]=a[j];

(3);

}

}

【说明2.2】

以下程序可以把从键盘上输入的十进制数(long型)以二~十六进制形式输出。

【程序2.2】

include<stdio.h>

main()

{ charb[16]={'0','l','2','3 ,4,'5','6','7','8','9','A','B','C','D','E','F'};

int c[64],d,i=0,base;

long n;

printf("enter a number:\n");

scanf("%1d",&n);

printf("enter new basc:\n");

scanf("%d", &base);

do

{ c[i]=(4);

i++; n=n/base;

} while(n!=0);

printf("transmite new base:\n");

for(--i;i>=0;--i)

{ d=c[i];

printf("%c",(5));

}

}

点击查看答案
第7题
●试题二 阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明2.1】 以下

●试题二

阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。

【说明2.1】

以下C语言函数用二分插入法实现对整型数组a中n个数的排序功能。

【函数2.1】

void fun1(int a[])

{int i,j,k,r,x,m;

for(i=2;i<=n;i++)

{ (1) ;

k=1;r=i-1;

while(k<=r)

{m=(k+r)/2;

if(x<a[m])r=m-1;

else (2) ;

}

for(j=i-1;j>=k;j--)

a[j+1]=a[j];

(3) ;

}

}

【说明2.2】

以下程序可以把从键盘上输入的十进制数(1ong型)以二~十六进制形式输出。

【程序2.2】

#include<stdio.h>

main()

{char b[16]={′0′,′1′,′2′,′3′,′4′,′5′,′6′,′7′,′8′,′9′,′A′,′B′,′C′,′D′,′E′,′F′};

int c[64],d,i=0,base;

long n;

printf(″enter a number:′n″);

scanf(″%1d″,&n);

printf(″enter new basc:kn″);

scanf(″%d″,&base);

do

{c[i]= (4) ;

i++;n=n/base;

}while(n!=0);

printf("transmite new base:\n");

for(--i;i>=0;--i)

{ d=c[i];

printf("%c", (5) );

}

}

点击查看答案
第8题
阅读以下说明和JAVA 2代码,将应填入(n)处的字句写在对应栏内。 [说明] 以下程序为类类型的变量应

阅读以下说明和JAVA 2代码,将应填入(n)处的字句写在对应栏内。

[说明]

以下程序为类类型的变量应用实例,通过异常处理检验了类CCircle的变量的合法性,即参数半径应为非负值。仔细阅读代码和相关注释,将程序补充完整。

[JAVA代码]

//定义自己的异常类

class CCircleException extends Exception

{

}

// 定义类 CCircle

class CCircle

{

private double radius;

public void setRadius (double r ) (1)

{

if (r<0 ) {

(2)

}

else

(3)

}

Public void show () {

System. out. println ("area="+3.14*radius*radius );

}

}

public class ciusample

{

public static void main (String args[] )

{

CCircle cir=new CCircle();

(4) {

cir. setRadius (-2.0 )

}

(5)

{

System. out. println (e+" throwed" ) ;

}

cir. show() ;

}

}

点击查看答案
第9题
阅读下列程序说明和C代码,把应填入其中n处的字句写在对应栏内。 【说明】 下面的程序能够计算不同图

阅读下列程序说明和C代码,把应填入其中n处的字句写在对应栏内。

【说明】

下面的程序能够计算不同图形的面积。程序中把每个图形的数据定义成结构类型,利用共同体类型描述2种图形的数据。程序根据输入参数代表的图形类型,求出图形的面积并输出。

【程序】

struct Circle

{

float x,y; /*圆心位置*/

float r; /*圆半径*/

};

struct Rectangle

{

float width; /*矩形宽*/

float length; /*矩形长*/

};

union shape

{

struct Circle circle;/*圆数据结构*/

struct Rectangle rectangle;/*矩形数据结构*/

};

main()

{

union shape a;

float area;

int i;

printf(“input number: 1circle,2rectangle,3 end\n”);

scanf("%d",&i);

while (1) /*循环接收输入,并计算输出*/

{

switch(i)

{

case 1:printf(“input radius:\n”);

scanf(“%f”, (2);/*共同体类型变量接收输入*/

area=3.1415926* (3);

printf(“the area of circle=%f\n”,area);

break;

case 2:printf(“input width and length :\n”);

seanf(“%f,%f”, (4);/*共同体类型变量接收输入*/。

area=(5);

printf(“the area of rectangle=%f\n”,area);

break;

}

printf(“input number:1 circle,2 rectangle,3 end\n”);

scanf(“%d”,&i);

}

}

点击查看答案
第10题
阅读下列程序说明和C代码,将应填入(n)处的字句写在对应栏内。[函数2.1说明] 函数void find(int *a

阅读下列程序说明和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);

}

点击查看答案
第11题
阅读以下说明、Java代码,将应填入(n)处的字句写在对应栏内。【说明】 本程序输出10000之内的所有完全

阅读以下说明、Java代码,将应填入(n)处的字句写在对应栏内。

【说明】

本程序输出10000之内的所有完全数。完全数是指等于其所有因子和(包括1,但不包括这个数本身)的数。例如:6=1×2×3,6=1+2+3,则6是一个完全数。

【程序】

public class PerfectNum

{

Public static void main(String args[])

{

int count=1;

for(int i=1; i<10000; i++)

{

int y=0;

for(int j=1; j<i; j++)

if((1))

y=(2)

if((3))

{

System.out.print((4) +String.valueOf('\t'));

(5)

If(count%3==0)

System.out.printin();

}

}

}

点击查看答案
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示:请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注简答题 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反简答题购买须知被冻结。您可在“简答题”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注简答题 -
请用微信扫码测试
欢迎分享答案

为鼓励登录用户提交答案,简答题每个月将会抽取一批参与作答的用户给予奖励,具体奖励活动请关注官方微信公众号:简答题

简答题官方微信公众号

简答题
下载APP
关注公众号
TOP