首页 > 计算机等级考试
题目内容 (请给出正确答案)
[主观题]

编写程序,读取一个0~1000的整数,将该整数的各位数字相加。例如,输入整数932,各位数字之和是14。

查看答案
答案
收藏
如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“编写程序,读取一个0~1000的整数,将该整数的各位数字相加…”相关的问题
第1题
阅读以下说明和C语言程序,将应填入(n)处的字句写在对应栏内。【说明】 计算n的合数。一个整数n可以有

阅读以下说明和C语言程序,将应填入(n)处的字句写在对应栏内。

【说明】

计算n的合数。一个整数n可以有多种划分,使其划分的一列整数之和为n。例如,整数5的划分为:

5

4 1

3 2

3 1 1

2 2 1

2 1 1 1

1 1 1 1 1

共有7种划分。这种划分的程序如下所示。

【程序】

include <stdio.h>

int n[1000],m,k;

void output sum()

{

int j;

for(j=0;n[j]!=0;j++)

printf("%d\t",n[j]);

printf("\n");

}

void sum(int i)

if(m-n[i]<n[i])

{ m=m-n[i];

(1)

i++;

n[i+1]=0;

}

else

{

(2)

m-=n[i];

i++;

}

if(m!=n[i])

sum(i);

else

output_sum();

if(n[i]>1)

{

n[i]--;

(3)

}

else

{

while((n[i]==1)&&(i>O))

{

i--;

(4)

}

if(i!=0)

{

(5)

sum(i);

}

}

}

void main()

{

int i;

scanf("%d",&n[0]);

m=k=n[0];

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

n[i]=0;

while(n[0]!=1)

{

n[0]--;

i=0;

sum(0);

m=k;

}

}

点击查看答案
第2题
在考生文件夹下有一个工程文件sj5.vbp,功能是用来计算勾股定理整数组合的个数。勾股定理中3个数的
关系是:a2+b2=c2.例如,3、4、5就是一个满足条件的整数组合(注意:a,b,c分别为4,3,5与分别为3,4,5被视为同一个组合,不应该重复计算)。编写程序,统计均在60以内的3个数满足上述关系的整数组合的个数,并显示在标签Label1中。

注意:不得修改原有程序的控件的属性。在结束程序运行之前,必须至少正确运行一次程序,将统计的结果显示在标签中,否则无成绩。最后把修改后的文件按原文件名存盘。

点击查看答案
第3题
请编写一个函数void fun(int m, int k,int xx[]),该函数的功能是将大于整数m且紧靠m的k个非素数

请编写一个函数void fun(int m, int k, int xx[]),该函数的功能是将大于整数m且紧靠m的k个非素数存入所指的数组中。

例如,若输入15,5,则应输出16,18,20,21,22。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

试题程序:

include<conio.h>

include<stdio.h>

void fun(int m,int k,int xx[])

{

}

main()

{

int m,n,zz[1000];

clrscr();

printf("\nPlease enter two integers:");

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

fun(m,n,zz);

for(m=0;m<n;m++)

printf("%d",zz[m]);

printf("\n");

}

点击查看答案
第4题
s=123"是一个整数形式字符串,编写程序判断s是否是整数形式字符串。如果是则输出True;否则输出False 。要求代码不超过2行 s="123" print(True if ______________ else False)
点击查看答案
第5题
已知列表lst_suit=["黑桃","红桃","梅花","方块"],存...

已知列表lst_suit=["黑桃","红桃","梅花","方块"],存放了扑克牌的所有花色,列表lst_face=["3","4","5","6","7","8","9","10","J","Q","K","A","2"],存放了扑克牌的所有牌面大小(按照牌面大小排列)。试编写程序,完成以下功能: (1) 利用列表生成式,将以上两个列表进行元素搭配,生成一个新的列表lst,存放所有牌面(不考虑大小王)。新列表lst的内容为['3黑桃', '3红桃', '3梅花', '3方块', '4黑桃', '4红桃', '4梅花', '4方块',……, 'A黑桃', 'A红桃', 'A梅花', 'A方块', '2黑桃', '2红桃', '2梅花', '2方块']。 (2) 使用random库的shuffle函数将列表lst中的元素次序打乱。 (3) 用户与电脑进行"抽牌比大小"游戏。游戏规则如下: l 用户输入序号(范围在0~51之间),程序根据序号在列表lst中读取牌面。 l 电脑抽牌由程序自动完成(通过random库的randint函数随机生成序号)。 l 将用户抽取的牌面与电脑抽取的牌面进行比较(不考虑花色),并将结果输出。输出内容对照如下: "恭喜,您赢了!" "很遗憾,您输了!" "咱们平手了!"

点击查看答案
第6题
●试题四 阅读以下说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 从文件IN.DA

●试题四

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

【说明】

从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请编写程序,其功能是:以行为单位把字符串中所有小写字母o左边的字符串内容移到该串的右边存放,然后把小写字母o删除,余下的字符串内容移到已处理字符串的左边存放。最后把已处理的字符串仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT(),把结果XX输出到文件OUT5.DAT中。

例如:原文:You can create an index on any field.

you have the correct record.

结果:n any field.Yu can create an index

rd.yu have the crrect rec

原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。

【函数】

#include "stdio.h"

#include "string.h"

#include "conio.h"

#include "ctype.h"

#include "mem.h"

unsigned char xx[50][80];

int maxline=0;

int readdat(void);

void writedat(void);

/*将题目要求的字符串中所有小写字母o左边的字符串内容移到该串的右边存放,即

将串中"最后"一个字母o左右两侧的内容互换*/

void StrOR(void)

{

inti;

char*p1,*p2,t[80];

for(i=0;i<maxline;i++)

{ t[0]=′/0′;

p2=xx[i];

while(*p2)/*找到最后一个′o′*/

{if((1) )p1=p2;

p2++;

}

strcat(t,p1+1);

*p1=′\\0′;

strcat(t,xx[i]);

p1=xx[i];

p2=t;

while(*p2)/*删去字符′o′*/

{if((2) ) (3) =*p2;

p2++;

}

(4) ;

}

}

void main()

{

clrscr();

if(readdat())

{printf("Can't open the file IN.DAT!\\n");

return;

}

StrOR();

writedat();

}

int readdat(void)

{

FILE*fp;

int i=0;

char*p;

if((fp=fopen("in.dat","r"))==NULL)

return 1;

while(fgets(xx[i],80,fp)!=NULL)

{p=strchr(xx[i],′\\n′);

if(p)

*p=0;

i++;

}

maxline= (5) ;

fclose(fp);

return 0;

}

void writedat(void)

{FILE*fp;

int i;

fp=fopen("in.dat","w");

for(i=0;i<maxline;i++)

{printf("%s\n",xx[i]);

fprintf(fp,"%s\n",xx[i]);

}

fclose(fp);

}

}

}

点击查看答案
第7题
下列关于RAID描述正确的是?()

A.一个磁盘阵列可以被分为一个或者多个逻辑驱动器

B.将驱动器从RAID 5 改为RAID 0将大大提高数据读取的速度

C.RAID 0 可以提供最好的容错性

D.操作系统不会将逻辑驱动器识别为物理驱动器

点击查看答案
第8题
在考生文件夹中有一个工程文件execise32.vbp,相应的窗体文件为execise32.frm。在名为Form1的窗体
上有一个名称为Cmd1,标题为“小于500的整数之和”的命令按钮。其功能是产生20个0~1000的随机整数,放入一个数组中,然后输出这20个整数中小于 500的所有整数之和。程序运行后,单击命令按钮,即可求出这些整数的和,并在窗体上显示出来,如下图所示。

本程序不完整,请补充完整,并能正确运行。

要求:

去掉程序中的注释符“'”,把程序中的问号“?”改为正确的内容,使其实现上述功能,但不得修改程序的其他部分。最后,按原文件名并在原文件夹中保存修改后的文件。

点击查看答案
第9题
编写程序,生成一个包含50个随机整数的列表,然后删除其中所有奇数。 提示: 导入randint函数; 利用列表推导式产生50个满足条件的列表; 输出产生列表; 利用for循环结构从后向前遍历列表中的所有元素,如range(49,-1,-1); 利用列表的remove方法删除所有奇数; 输出结果。
点击查看答案
第10题
请编制程序,其功能是:内存中连续存放着两个由8位有符号整数组成的序列Ai和Bi(i=0,…,9;下同),Ai在

请编制程序,其功能是:内存中连续存放着两个由8位有符号整数组成的序列Ai和Bi(i=0,…,9;下同),Ai在前,Bi在后。求序列Ci,Ci=Ai+Bi。结果Ci用字单元按C0,…,C9的顺序存放。

例如:

序列Ai为:80H(-128D),31H(49D),61(97D),7FH(127D),…

序列Bi为:80H(-128D),01(1D),F1H(-15D),7FH(127D),…

部分程序已经给出,其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中,运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。

请填空BEGIN和END之间已给出的源程序使其完整,空白处已用横线标出,每行空白一般只需一条指令,但采用功能相当的多条指令亦可,或删去BEGIN和END之间原有的代码并自行编程来完成所要求的功能。

对程序必须进行汇编,并与IO.OBJ连接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序存在错误之处,请加以修改。

[试题程序]

EXTRN LOAD:FAR,SAVE:FAR

N EQU 10 每个序列的长度

STAC SEGMENT STACK

DB 128 DUP ()

STAC ENDS

DATA SEGMENT

SOURCE DB N*2 DUP() ; 顺序存放A0,L,A9,B0,L,B9

RESULT DW N DUP(0) ; 顺序存放C0,L,C9

NAME0 DB 'INPUT1.DAT',0

NAME1 DB 'OUTPUT1.DAT',0

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE, DS:DATA, SS:STAC

START PROC FAR

PUSH DS

XOR AX,AX

PUSH AX

MOV AX,DATA

MOV DS,AX

LEA DX,SOURCE ;数据区起始地址

LEA SI,NAME0 ;原始数据文件名

MOV CX,N*2 ;字节数

CALL LOAD ;从"INPUT1.DAT"中读取数据

; **+***** BEGIN ********

MOV DI,OFFSET RESULT ;结果从RESULT开始存放

MOV BX,0

MOV CX,N

PRO: MOV AH,0

MOV AL, (1) ;序列Bi中的一个整数

MOV DL,AL ;暂存Bi

(2) AL,SOURCE[BX] ;Ci=Bi+Ai

JNO STAY ;无溢出转STAY

JUMP1: MOV AH,00 ;有溢出

ADD DL,0

JNS JUMP ;Bi是正数(为一个正数加上一个正数,

;结果为负数的溢出情况)转JUNP(AH

;已为00H)

MOV AH, (3) ;Bi是负数(为一个负数加上一个负数,

;结果为正数的溢出情况)将结果变为

;负数

JMP (4)&nbs

点击查看答案
第11题
下列程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx。请编写函数num(int m,int k,int xx[])

下列程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx。请编写函数num(int m,int k,int xx[])实现程序的要求,最后调用函数read write DAT()把结果输出到out31.dat文件中。

例如,若输入17,5,则应输出19,23,29,31,37。

注意:部分源程序已给出。

请勿改动主函数main()和输入输出函数read write DAT()的内容。

试题程序:

include < conio.h>

include

Void readwriteDAT();

Void num(int m,int k,,int XX[])

{

}

main()

{

int m,n,xx[1000];

Clrscr();

printf(“\nPlease enter tWO integers:”)

‘scanf(“%d,%d”,&m,&n);

num(m, n, XX);

for(m=0;m<n;m++)

printf(“%d”, XX[m]);

printf(”\n”);

readwriteDAT();

)

VOid read write DAT()

{

int m,n,xx[1000],i;

FILE *rf.,*Wf;

rf=fopen(“in31.Dat”,r”);

Wffopen(“ou1t31.Dat”/”w”);。 for(i=0;i<10;i++)

{

fscanf(rf,%d,” %d”,&m,&n);

num(m,n,XX);

for(m=0;m fprintf(wf,%d”,xx[m]);

fprintf (wf, “\n”);

}

fclose(rf);

fclose (wf);

}

点击查看答案
退出 登录/注册
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改