![](https://lstatic.shangxueba.com/sxbzda/h5/images/m_q_title.png)
练习2.程序启动时,在窗体上输出“欢迎进入Visual Basic!”。(标签练习) 提示:程序启动时,在窗体上输出,所以事件为窗体的Load事件,输出用Print方法。Load事件中使用Print方法。 代码如下: Private Sub Form_Load() Form1.Print "欢迎进入Visual Basic!" End Sub 本题答案请上传程序运行结果截图
![](https://lstatic.shangxueba.com/sxbzda/h5/images/tips_org.png)
第1题
模拟电子琴演奏程序设计。微机中扬声器控制发声原理如练习图10.1所示,其中用到8255与8253两个芯片。
程序设计流程该程序设计可以分解成两个部分:如何控制计算机的扬声器发音、如何使不同按键对应约定的声音。
模拟演奏程序算法如下:
第一步:初始化,建立分频数与发音键表。
第二步:清屏,并显示“PIANO 2004.8.15.$”。
第三步:等待按键,有键按下则往下执行。
第四步:若判断是退出键,则返回操作系统。
第五步:若判断是停止发音键,则断开送往扬声器的电平信号,并转第三步。
第六步:若判断不是退出、停止发音、发音键,转第三步。
第七步:查出与发音键对应的发音分频数,并启动8253的通道2,转第三步。
第三步采用DOS的中断调用“键盘无回显”方式输入,即按下键时,不会在屏幕上出现相应的显示。
第四步可约定回车键为退出键。
第五步可约定空格键为停止发音键。
第七步为了对8253通道2进行初始化。可向43H端口送控制字B6H,含意是:选择通道2,使其按方式3工作(送出方波信号),向通道2送16位分频数,先送低8位,后送高8位,通道2按二进制计数。
第2题
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,即使程序在屏幕输出以下类似内容:
0012FF6810012FF3C5
0012FF6C20012FF444
0012FF7030012FF4C3
0023FF7440012FF542
0012FF7850012FF5C1
006AFDCC~006AFDEF数据可能因为机器的不同,程序输出的内容会有差异。只要相差为4的连续地址即可。
注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在//******error******的下面。
试题程序:
#include
usingnamespacestd;
intmain()
{
int*P,a[5]={1,2,3,4,5};
double*q,b[5]={5.0,4.0,3.0,2.0,1.0);
intx;
P=a;
q=b;
//********error********
for(x=0;x<=5;X++)
//********error********
cout<;< p="">
(q+x)<;< p="">
return0;
}
第3题
使用VC++6.0打开考生文件夹下的源程序文件2.cpp。完成函数fun(char*sl,char*s2)的空出部分。函数fun(char*s1,char*s2)的功能是将在字符串s1中下标为偶数的字符,紧随其后重复出现一次,放在一个新串s2中,s2中字符按原字符串中字符的顺序排列。(注意0为偶数)
例如:当s1中的字符串为“abcdef”时,s2中的字符串应为“aaccee”。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include(iostream.h)
voidfun(char*s1,char*s2)
{
}
voidmain()
{
charsi[100】,s2【1OO];
cout<<"Pleaseenterstringstrin9:"<
cin.getline(s1,100);
fun(s1,s2);
cout<<"Theresultis:"<
return;
}
第4题
【其它】练习记账凭证核算程序 施恩公司20×2年12月份的总分类科目及部分明细分类科目余额资料如表11-135所示。相关账户的明细资料如下: (1)“原材料”账户的余额为:A材料1 100千克,单价200元,B材料700千克,单价为400元。 (2)“生产成本”账户的余额为甲在产品100件余额(三栏式明细账)。 (3)“库存商品”账户的余额为甲产品500件,单位成本为800元。 施恩公司20×2年12月发生的各项经济业务如下: (1)1日,从平营公司购入A材料400千克,单价200元,计80 000元,增值税专用发票上注明税款为13 600元,材料已验收入库,货款以银行存款支付。 (2)1日,按银行通知,收到春朝公司的货款46 000元。 (3)3日,以银行存款支付办公费4 200元,其中生产车间1 000元,管理部门3200元。 (4)5日,以银行存款购入设备一台,价款30 000元,增值税5 100元,另以现金支付安装费、运输费2 000元,该设备已投入使用。 (5)6日,从司王公司购入B材料300千克,单价400元,计120 000元,增值税专用发票上注明的税款为20 400元,材料已购收入库,货款尚未支付。 (6)7日,收到利来公司投资的设备一台,价值200 000元,已投入使用。 (7)7日,销售科李勇报销差旅费2 000元,以现金支付。 (8)8日,从银行提取现金17 000元,备发工资。 (9)8日,以现金发放工资17 000元。 (10)9日,销售甲产品300件,单价1 500元,增值税率为17%,货款及增值税已存入银行。 (11)10日,以银行存款支付水电费4 000元,其中生产车间3 700元,管理部门300元。 (12)15日,向春朝公司销售甲产品100件,单价1 500元,增值税率为17%,款项尚未收到。 (13)16日,以银行存款上交上月应交的城建税7 000元,教育附加费3 000元。 (14)16日,职工王敏报销差旅费1 900元,以现金支付100元。 (15)18日,以银行存款支付销售费用4 000元。 (16)20日,收到恩来公司的货款140 000元,存入银行。 (17)22日,以银行存款通过中国红十字会向地震灾区捐款20 000元。 (18)23日,收到转让无形资产使用权租金收入8 000元,存入银行。 (19)31日,计提本月固定资产折旧费12 000元,其中生产车间固定资产折旧费9000元,管理部门固定资产折旧费3 000元。 (20)31日,取得本期房屋租金收入1 000元,存入银行。 (21)31日,支付本月报刊杂志费500元。 (22)31日,本月发料凭证汇总如下:A材料领用800千克,其中甲产品耗用750千克,生产车间一般耗用10千克,管理部门耗用40千克,单价200元,乙材料发出600千克,单价400元,全部用于甲产品生产。 (23)31日,支付本月的借款利息3 000元。 (24)31日,分配本月工资20 000元,其中生产工人工资15 000元,车间管理人员工资1 500元,企业管理人员工资3 500元,并按14%计提职工福利费。 (25)31日,结转本月发生的制造费用。 (26)31日,结转本月完工甲产品300件成本,单位生产成本800元。 (27)31日,结转本月已销产品生产成本。 (28)31日,计算本月应交城建税4 760元,教育费附加2 040元。 (29)31日,结转本月损益类科目,计算利润总额。 (30)31日,根据本月实现的利润总额,假设不存在利润调整项目,按所得税税率25%计算本月应交所得税。 (31)31日,结转所得税费用,结转本月实现的净利润到利润分配科目。 (32)31日,按税后利润的10%提取法定盈余公积。 (33)31日,向投资者分配利润40 000元。 (34)31日,结转利润分配的相关明细账。 要求: (1)开设三栏式现金日记账和银行存款日记账;开设各有关账户的总分类账和明细分类账。登记各有关账户的期初余额。 (2)根据12月份发生的经济业务,分别编制收款凭证、付款凭证和转账凭证,并据以登记日记账、明细分类账户和总分类账账户。 (3)编制有关总分类账户和明细分类账户的本期发生额与期末余额对照表,进行对账与结账。 (4)编制试算平衡表,据有关总分类账户和相关明细分类账户编制资产负债表和利润表。
第5题
第7题
实验十三 编程综合练习 一、实验目的 1. 掌握C程序设计语言的相关知识,提高C程序的编程技巧; 2. 学会使用文件相关函数进行编程综合练习。 二、实验内容及实验步骤 1. 文本文件显示。用任何一种方法先创建一个文本文件string.txt,编写程序将该文件的内容显示出来。 参考程序 /* 显示文本文件的程序 */ #include "stdio.h" main() { FILE *fp; char ch; if((fp=fopen("string.txt","r"))==NULL) { printf("cannot open source file.\n"); exit(1); } while(!feof(fp)) { ch=fgetc(fp); putchar(ch); } fclose(fp); } 程序调试 ① 建立string.txt文本文件。 ② 运行程序,察看并分析程序的运行结果。 ③ 删除string.txt文本文件后,运行程序,察看并分析程序的运行结果。 2. 文件复制。编写一个文本文件复制函数,并在主函数main()中调用它,将上面建立的文本文件string.txt复制到文件backup.txt中。 参考程序 /* 文件复制程序 */ #include"stdio.h" void copy(char *,char *); /* 文件复制函数原型说明 */ main() { char *source="string.txt"; char *target="backup.txt"; copy(source,target); } void copy(char *source,char *target) { FILE *fp_s,*fp_t; if((fp_s=fopen(source,"r"))==NULL) /* 以读方式打开源文件 */ { printf("cannot open source file.\n"); exit(1); } if((fp_t=fopen(target,"w"))==NULL) { printf("cannot open target file.\n"); exit(1); } while(!feof(fp_s)) fputc(fgetc(fp_s),fp_t); fclose(fp_s); fclose(fp_t); return; } 程序调试 运行程序后,用文本编辑软件打开backup.txt文件察看结果。也可以使用上面的文本文件显示程序察看结果。 3. 用文件存储学生数据。有5个学生,每个学生有3门课的成绩,从键盘输入数据(包括学生号、姓名、3门课成绩),计算出平均成绩,将原有数据和计算出的平均分数存放在磁盘文件stud中。 设5名学生的学号、姓名和3门课成绩如下: 99101 Wang 89 98 67 99103 Li 60 80 90 99106 Fun 75 91 99 99110 Ling 80 50 62 99113 Yuan 58 68 7l 参考程序 /* 用文件存储学生数据程序 */ #include "stdio.h" #define N 5 struct student /* 定义学生结构体数据类型 */ { char num[10]; char name[8]; int score[3]; float ave; }; main() { struct student stu[5]; int i,j; FILE *fp; float sum; for(i=0;i<n;i++) { printf("enter num: "); scanf("%s",stu[i].num); * 输入学生的学号 name: scanf("%s",stu[i].name); 输入学生的姓名 sum="0;" for(j="0;j<3;j++)" 输入学生的三门课的成绩 socre%d: ",j+1); scanf("%d",&stu[i].score[j]); 计算总成绩 getchar(); } stu[i].ave="sum/3.0;" 计算平均成绩 printf("\n"); if((fp="fopen(" stud" ","w"))="=NULL)" printf("can not open this file.\n"); exit(1); for(i="0;i<N;i++)" fwrite(&stu[i],sizeof(struct student),1,fp); fclose(fp); ","r"))="=NULL)" fread(&stu[i],sizeof(struct printf("%s %s ",stu[i].num,stu[i].name); printf("%d ",stu[i].score[j]); printf("%f\n",stu[i].ave); 程序调试 ① 为了观察文件的存储操作是否正确,在调试程序时应增加显示存储文件的程序代码。也可以单独编写程序,显示存储文件。 ② 在参考程序中,在写文件时使用的是“w”操作方式,显示文件时重新用“r”方式打开。请修改程序,使用一种文件操作方式,写完之后,再从头显示文件内容。 三、实验报告要求 写明: 1. 实验目的 2. 实验内容与步骤 3. 编写的程序(题目,经调试、运行后正确的程序) 4. 思考题的解决方法。 5.>
第8题
阅读以下说明和Java代码,回答问题。
[说明]
已知类Stock和类cxyjava都定义在cxyjava.java文件中,类Stock的定义中第14行前共有四行出现了错误,将下而代码修改正确并完善后的输出结果为:
0:0
1:23
[Java代码]
01 publiC class Stock {
02 static {
03 shares=0;
04 share_val = 0.0;
05 }
06 public Stock( ) {getData( );}
07 publie Stock(int n, int pr=0){
08 shares=n;
09 share val=pr;
10 getData( );
11 }
12 public void getData( ) {
13 System.out.printin(shares+ ":" +share_val);
14 }
15 private int shares;
16 private int share val;
17 };
18
19 public class cxyjava {
20 public static void main(String args[]){
21 Stock a= (1) ;
22 Stock b=new Stock(1,23);
23 //其他无输出代码省略
24 }
25 }
请补齐第21行代码中的空缺。
【我提交的答案】:
【参考答案分析】:
第1行,去掉public第2行,去掉static第4行,share val=0第7行,去掉“=0”new Stock( ),或者new Stock(0,0) 解析:Java代码中,一个文件只能有一个与文件同名的公共类,所以问题1中第一行Stock类前面的public修饰符要去掉。静态的初始化区域只能对类的静态变量进行初始化,而shares和share val不是静态变量,所以需要去掉第2行的static。第16行将share val定义为int型,所以第4行赋值有误,需要改为0。第7行Stock类的构造函数没有默认参数的用法,所以需要将默认值去掉。对于问题2由于程序输出的第一行为0:0,所以直接调用构造函数Stock( ),因为默认参数均已为0,或者调用构造函数Stock(0,0)也可实现。
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!