当前位置:文档之家› 谭浩强C++程序答案(第二版)(苗创)

谭浩强C++程序答案(第二版)(苗创)

谭浩强C++程序答案(第二版)(苗创)
谭浩强C++程序答案(第二版)(苗创)

谭浩强C++程序设计(第二版)(答案终极版)

(苗创版)

第一章:C++的初步知识

5题:程序:#include

using namespace std;

int main()

{

cout<<"This"<<"is";

cout<<"a"<<"C++";

cout<<"program."<

system("pause");

return 0;

}

结果:this is a program

6题程序:#include

using namespace std;

int main()

{

int a,b,c;

a=10;

b=23;

c=a+b;

cout<<"a+b=";

cout<

cout<

return 0;}

结果:a+b=33

7题程序:#include using namespace std;

int main()

{ int a,b,c;

int f(int x,int y,int z);

cin>>a>>b>>c;

c=f(a,b,c);

cout<

return 0;

}

int f(int x,int y,int z)

{ int m;

if(x

else m=y;

if(z

return (m);

}

功能:输入3个整数,找出最小的数;

9题程序:

#include

using namespace std;

int main()

{

int a,b,c;

int add(int x,int y); // 声明

cin>>a>>b; //输入

c=add(a,b);

cout<<"c="<

system("pause");

return 0;

}

int add(int x,int y) //定义

{ int z;

z=x+y;

return (z);

}

10题:程序:#include using namespace std;

int main()

{int sort(int x,int y,int z);

int x,y,z;

cin>>x>>y>>z;

sort(x,y,z);system ("pause");

return 0;

}

int sort(int x,int y,int z )

{

int temp;

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

if(z

else if(z

else cout<

}

功能:输入三个数进行排序

第二章数据类型和表达式

3.题

程序:#include

using namespace std;

int main()

{ char c1='a',c2='b',c3='c',c4='\101',c5='116';

cout<

cout<<"\t\b"<

return 0;

}

结果:abc

A 6

4题

程序:#include

using namespace std;

int main()

{

char c1='C',c2='+',c3='+';

cout<<"I say:\""<

cout<<"\t\\"<<"He says:\"C++ is very interesting!\""<<'\n';

return 0;

}

结果:I say “C++”He says C++ is very interesting!

5题

程序:

#include

using namespace std;

int main()

{int a,b,c;

cout<<3.5*3+2*7-'a'<

cout<<26/3+34%3+2.5<

cout<<45/2+(int)3.14159/2<

{int a=3;

cout<<(int)(a+6.5)%2+(a=b=5)<

float x=3.5,y=2.5;

cout<<(float)(a+b)/2+(int)x%(int)y<

}

6.题

程序:#include

using namespace std;

int main()

{int a=12,n=5;

cout<<'a+=a'<

cout<<'a-=3'<

cout<<'a*=2+3'<

cout<<'a*=2+3'<

cout<<'a/=a+a'<

cout<<'a%=(n%=2)'<

cout<<'a+=a-=a*=a'<

return 0;

}

结果:

7.题

程序:#include

using namespace std;

int main()

{int i,j,m,n;

i=8;

j=10;

m=++i+j++;

n=(++i)+(++j)+m;

cout<

return 0;}

结果:10 12 19 41

8题

程序:#include

using namespace std;

int main()

{

char c1,c2,c3,c4;

cin>>c1>>c2>>c3>>c4;

c1=c1+4;

c2=c2+4;

c3=c3+4;

c4=c4+4;

cout<

return 0;

}

结果:输入China 得到Glmre

第三章程序设计初步2题

程序:#include

#include

#define pi 3.1415926

using namespace std;

int main()

{

int h=3;

float r=1.5,c,s,s1,v,v1;

c=2*pi*r;

s=r*r*pi;

s1=4*pi*r*r;

v=4/3*r*r*pi;

v1=pi*r*r*h;

cout<

system("pause");

return 0;

}

结果:9.42 7.07 28.27 7.07 21.21

3题

程序:#include

using namespace std;

int main()

{

float F,c;

cin>>F;

c=(5*(F-32))/9;

cout<<"c="<

return 0;

}

4.题(1)程序:#include

using namespace std;

int main()

{

char c1,c2;

c1=getchar();

c2=getchar();

putchar(c1);

putchar(c2);

return 0;

}

(注意输入字符时中间不能有空格)(2)原样输出和输出ASC值

程序:#include

using namespace std;

int main()

{

char c1,c2;

c1=getchar();

c2=getchar();

putchar(c1);

putchar(c2);

putchar('\n');

cout<<(int)c1<

cout<<(int)c2<

return 0;

}

6.题

程序:#include

using namespace std;

int main()

{

int a=3,b=4,c=5;

cout<<'a+b>c&&b==c'<,endl;

cout<<'a||b+c&&b-c'<

cout<<'!(a>b)&&!c||1'<

cout<<'!(x=a)&&(y=b)&&0'<

cout<<'!(a+b)+c-1&&b+c/2'<

return 0;

}

9题

程序(一解)#include

using namespace std;

int main ()

{int a,b,c,temp,max;

cin>>a>>b>>c;

temp=(a>b)?a:b;

max=(temp>c)?temp:c;

cout<<"max="<

return 0;

}

(二解)

程序:#include

using namespace std;

int main()

{

int a,b,c,temp;

cin>>a>>b>>c;

if(a>b)

if(b>c)

else

cout<

else if(a

cout<

else

cout<

return 0;

}

10题

程序:#include

using namespace std;

int main()

{

float x,y;

cin>>x;

if(x<1)

y=x;

else if(1<=x&&x<10)

y=2*x-1;

else if(x>=10)

y=3*x-11;

return 0;

}

11题

程序:#include using namespace std;

int main()

{

int score,T,;

cin>>score;

T=score/10;

switch(T)

{ case 10:

case 9:cout<<'A'; break;

case 8: cout<<'B' ;

break;

case 7: cout<<'C';

break;

case 6: cout<<'D';

break;

case 5:

case 4:

case 3:

case 2:

case 1: cout<<'E';

break;

default: cout<<"error\n";break;

}

return 0;

}

12题

程序:#include

using namespace std;

int main()

{

long int num;

int indiv,ten,hundred,thousand,ten_thousand,place; cout<<"enter an integer(0~99999)";

cin>>num;

if(num>9999)

place=5;

else if(num>999)

place=4;

else if(num>99)

place=3;

else if(num>9)

place=2;

else place=1;

cout<<"place="<

ten_thousand=num/10000;

thousand=(int)(num-ten_thousand*10000)/1000;

hundred=(int)(num-ten_thousand*10000-thousand*100 0)/100;

ten=(int)(num-ten_thousand*10000-thousand*1000-hun dred*100)/10;

indiv=(int)(num-ten_thousand*10000-thousand*1000-h undred*100-ten*10);

cout<<"original order:";

switch(place)

{

case

5:cout<

cout<<"reverse order:";

cout<

break;

case

4:cout<

cout<<"reverse order:";

cout<

break;

case

3:cout<

cout<<"reverse order:";

cout<

break;

case 2:cout<

cout<<"reverse order:";

cout<

break;

case 1:cout<

cout<<"reverse order:";

cout<

break;

}

return 0;

}

14题

程序:#include

using namespace std;

int main ()

{int a,b,c,d,temp,m,max;

cin>>a>>b>>c>>d;

temp=(a>b)?a:b;

m=(temp>c)?temp:c;

max=(m>d)?m:d;

cout<<"max="<

return 0;

}

15题

程序:#include

using namespace std;

int main()

{int p,r,max,min,temp;

cout<<"Input 2 integers:"; cin>>max>>min;

if(max

{ temp=max;

max=min;

min=temp;

}

p=max*min;

while(min!=0)

{r=max%min;

max=min;

min=r;

}

cout<<"Greatest common divisor is "<

}

16题

程序:#include

using namespace std;

int main()

{

char c;

int letters=0,space=0,digit=0,other=0;

cout<<"enter one line::"<

while (c=getchar()!='\n')

{

if(c>'a'&&c<='z'||c>='A'&&c<='Z')

letters++;

else if(c==' ')// з?вт

space++;

else if(c>='0'&&c<='9')

digit++;

else other++;

}

cout<<"letter:"<

return 0;

}

17题

程序(第一解)#include

using namespace std;

int main()

{

int n,i,tn,sn,a;

C语言程序设计实验报告参考答案

长沙理工大学C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述四、程序清单 1.编写程序实现在屏幕上显示以下结果: Thedressislong Theshoesarebig Thetrousersareblack 答案: #include main() { printf("Thedressislong\n"); printf("Theshoesarebig\n"); printf("Thetrousersareblack\n"); } 2.改错题(将正确程序写在指定位置) 正确的程序为: #include main() {

printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥50.5\n"); } 2.编写程序:a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include main() { inta,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x);

printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4.设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include main() { inta,b,c; a=0; b=-10; c=(a>b)?b:a; printf("c=%d\n",c); }

VB程序设计课后习题答案(科学出版社)

同步练习1 二、选择题 01——05 CADAB 06——10 ACDAB 11——15 CBDBB 同步练习2 二、选择题 01——05 ABDCA 06——10 CACBC 11——15 DADAD 16——20 BDBBB 三、填空题 1.可视 2.LEFT、TOP、WIDTH、HEIGHT 3.按字母顺序 4.查看代码 5.工具、编辑器 6.FORM窗体、FONT 7.MULTILINE 8.在运行时设计是无效的 9.工程、工程属性、通用、FORM1.SHOW 10.TABINDEX、0 同步练习3 二、选择题 01——05 BCADB 06——10 ADBBC 11——15 DBCBA 16——20 BAABB 三、填空题 1.整型、长整型、单精度型、双精度型 2.SIN(30*3.14/180)+SQR(X+EXP(3))/ABS(X-Y)-LOG(3*X) 3.164、今天是:3-19 4.FALSE 5.-4、3、-3、3、-4、4 6.CDEF 7.(X MOD 10)*10+X\10 8.(35\20)*20=20 ( 35 \ 20 )* 20 = 20 9.X MOD 3=0 OR X MOD 5=0 10.27.6、8.2、8、1、100、397、TRUE、FALSE 同步练习4 一、选择题 01——05 DBCAD 06——10 CBBAB

11——15 D25BAC 16——20 CBACB 21——25 DAABC 二、填空题 1.正确性、有穷性、可行性、有0个或多个输入、有1个或多个输出2.1 2 3 3.X>=7 4.X

C语言程序设计谭浩强第四版期末复习重点

C语言程序设计谭浩强第四版期末复习重点 Newly compiled on November 23, 2020

第一章 程 序设计和C 语言 .什么是计算机程序 程序.. :一组计算机能识别和执行的指令。只要让计算机执行这个程序,计算机就会自动地、有条不紊地进行工作 计算机的一切操作都是由程序控制的,离开程序,计算机将一事无成。 什么是计算机语言 计算机语言:人和计算机交流信息的、计算机和人都能识别的语言。 计算机语言发展阶段:机器语言(由0和1组成的指令) 符号语言(用英文字母和数字表示指令) 高级语言(接近于人的自然语言和数学语言) 面向过程的语言(非结构化的语言、结构化语言);面向对象的语言 语言的发展及其特点 C 语言是一种用途广泛、功能强大、使用灵活的过程性编程语言,既可用于编写应用软件,又能用于编写系统软件。因此C 语言问世以后得到迅速推广。 C 语言主要特点: 语言简洁、紧凑,使用方便、灵活。(只有37个关键字、9种控制语句;程序书写形式 自由,源程序短) 运算符丰富。(34种运算符;把括号、赋值、强制类型转换等都作为运算符处理;表达 式类型多样化) 数据类型丰富。(包括:整型、浮点型、字符型、数组类型、指针类型、结构体类型、共用体类型;C99又扩充了复数浮点类型、超长整型、布尔类型;指针类型数据,能用来实现各种复杂的数据结构的运算。)

具有结构化的控制语句。(如if…else语句、while语句、do…while语句、switch语句、for语句用函数作为程序的模块单位,便于实现程序的模块化;C语言是完全模块化和结构化的语言) 语法限制不太严格,程序设计自由度大。(对数组下标越界不做检查;对变量的类型使用比较灵活,例如,整型量与字符型数据可以通用;C语言允许程序编写者有较大的自由度,因此放宽了语法检查) 允许直接访问物理地址,能进行位操作,可以直接对硬件进行操作。(C语言具有高级语言的功能和低级语言的许多功能,可用来编写系统软件;这种双重性,使它既是成功的系统描述语言,又是通用的程序设计语言) 用C语言编写的程序可移植性好。(C的编译系统简洁,很容易移植到新系统;在新系统上运行时,可直接编译“标准链接库”中的大部分功能,不需要修改源代码;几乎所有计算机系统都可以使用C语言) 生成目标代码质量高,程序执行效率高。 1.C语言允许用两种注释方式:计算法 3.编写程序 4.对源程序进行编辑、编译和连接 5. 运行程序,分析结 6.编写程序文档 第二章算法——程序的灵魂 一个程序主要包括以下两方面的信息: (1) 对数据的描述。在程序中要指定用到哪些数据以及这些数据的类型和数据的组织形式,这就是数据结构。 (2) 对操作的描述。即要求计算机进行操作的步骤,也就是算法。 数据是操作的对象,操作的目的是对数据进行加工处理,以得到期望的结果。 着名计算机科学家沃思(Nikiklaus Wirth)提出一个公式:算法 + 数据结构 = 程序

C语言程序设计实验与习题答案

2.程序填空 (1)以下程序的功能是计算1~50之间能被7整除的整数之和。 #include void main() {int i,sum= 0; for(i=1;50;i++) if(i%7==0) sum+=i; printf("sum=%d\n",sum); } (2) 下面程序接收来自键盘的输入,直到输入+Z(值为-1)键为止。这些字符被原样输出,但若有连续一个以上的空格时只输出一个空格。请填空。 #include void main() {char cx; char front=’’; while ((cx=getchar())!=’\n’) {if (cx!=’’) putchar(cx); if (cx= =’’) if (front!=’’) putchar(cx); front=cx; } } 3.程序改错 (1)下列程序的功能是求1+3+5+…99的和。

#include void main( ) { int s,i; ★//int s=0,i; i=1; while(i<=99)s=s+i;★//{s=s+i;i++;} printf("1+3+5+…99的和是:%d\n",s); } (2)下面程序的功能是输入一个正整数,判断是否是素数,若 为素数输出1,否则输出0。 #include void main() { int i,x,y=0; ★//y=1 scanf("%d",&x); for(i=2;i<=x/2&&y;i++) if ((x%i)!=0) y=0; ★//x%i==0 printf("%d\n",y); } 4.设计性实验 (1)题 /* 方法(1)精度控制*/ #include

《VB程序设计》习题答案-林卓然编著

《VB语言程序设计》教材 林卓然编著 《VB程序设计》习题参考答案 第1章习题 一、单选题 1.D 2.B 3.C 4.A 5.C 6. A 7.A 8.B 9.C 10.(1)A (2)B 二、多选题 1.ACDE 2.BCDE 3.CD 4. CE 三、填空题 1.事件驱动 2.解释,编译 3.设计,运行,中断 4. 属性,方法,事件 5. Command2_Click 6. 中央,代码 7.MyForm.frm 8. (1)Cmd1_Click() (2)Print "VB语言程序设计" 编程及上机调试 1. 按要求设置窗体属性 2.在窗体上建立一个标签Label1。程序代码如下: Private Sub Form_Click() Label1.Caption = "你单击了窗体" End Sub Private Sub Form_DblClick() Label1.Caption = "你双击了窗体" End Sub 3.在窗体上建立两个文本框Text1(输入数)、Text2(输出数)和一个命令按钮Command1。两个文本框的Text属性均为空。 Private Sub Command1_Click() Dim x As Single x = Val(Text1.Text) Text2.Text = 15 * x End Sub 第2章习题 一、单选题 1.①D,②D 2.①A,②C 3.A 4.B 5.B 6.B 7.C 8.D 9.B 10.B 11.A 12.A 13.B 14.A 15.B 16.A 17.B 二、多选题 1.BD 2.CD 3.AC 4. AD 三、填空题 1.(1) Sin(50*3.14159/180) (2) (2+x*y)/(2–y*y)

C程序设计第四版谭浩强_习题&例题第7章

第7章函数 例7.1 #include int main() { void print_star(); void print_message(); print_star(); print_message(); print_star(); return 0; } void print_star() { printf("***********************************\n"); } void print_message() { printf("How do you do!\n"); } 例7.2 int max(int x,int y) { int z; z=x>y?x:y; return(z); } #include int main() { int max(int x,int y); int a,b,c; printf("please enter two integer number:"); scanf("%d,%d",&a,&b); c=max(a,b); printf("max is %d\n",c); return 0; }

例7.3 #include int main() { int max(float x,float y); float a,b; int c; printf("please enter two integer number:"); scanf("%f,%f",&a,&b); c=max(a,b); printf("max is %d\n",c); return 0; } int max(float x,float y) { float z; z=x>y?x:y; return(z); } 例7.4 #include int main() { float add(float x,float y); float a,b,c; printf("please enter a and b:"); scanf("%f,%f",&a,&b); c=add(a,b); printf("sum is %f\n",c); return 0; } float add(float x,float y) { float z; z=x+y; return(z); }

24c02读写程序大全

24c02读写程序大全 2C总线的应用(24C02子程序) // 对24C02的读、写 // extern void DelayMs(unsigned int); // extern void Read24c02(unsigned char *RamAddress,unsigned char Ro mAddress,unsigned char bytes); // extern void Write24c02(unsigned char *RamAddress,unsigned char Ro mAddress,unsigned char bytes); /***************************************************************************/ #define WriteDeviceAddress 0xa0 #define ReadDviceAddress 0xa1 #include #include #include /***************************************************************************/ sbit SCL=P2^7; sbit SDA=P2^6; bit DOG; /***************************************************************************/ void DelayMs(unsigned int number) { unsigned char temp; for(;number!=0;number--,DOG=!DOG) { for(temp=112;temp!=0;temp--) { } } } /***************************************************************************/ void Start() { SDA=1; SCL=1; SDA=0; SCL=0; } /***************************************************************************/ void Stop() { SCL=0; SDA=0;

C语言程序设计实验报告(数组)

C语言程序设计实验报告(数组) 1实验目的 (1)熟练掌握一维数组,二维数组的定义,初始化和输入、输出方法; (2)熟练掌握字符数组和字符串函数的使用; (3)掌握与数组有关的常用算法(查找、排序等)。 2实验内容 编写函数catStr(char str1[],char str2[])用于进行两个字符串的连接,编写函数lenStr(char str[])用于统计一个字符串的长度,并在主函数中调用。 要求: 1、不允许用strcat()和strlen()字符处理库函数; 2、在主函数以直接初始化的方式输入两个字符串str1和str2.调用函数 strlen()计算并返回两个字符串的长度; 3、调用函数catstr()连接两个字符串(将str2连接在str1后面); 4、调用函数lenstr()计算并返回连接后字符串的长度; 5、在主函数中输入两个原始的字符串及几个字符串的长度,以及处理后字 符串及其长度。

3算法描述流程图

4源程序 #include #include void catStr(char str1[],char str2[]) { int i,j; for (i=0;str1[i]!='\0';i++); for(j=0;str2[j]!='\0';j++) str1[i+j]=str2[j]; str1[i+j]='\0'; } lenStr(char m[] ) {int i;

for (i=0;m[i]!='\0';i++); printf("%d",i); } void main() {char s1[50]="forever",s2[50]="more"; printf("s1=%s,s2=%s",s1,s2); printf("\ns1的长度:"); lenStr(s1); printf("\ns2的长度:"); lenStr(s2); catStr(s1,s2); printf("\n连接后的字符:"); printf("%s\n",s1); printf("连接后字符的长度:"); lenStr(s1); printf("\n"); } 5测试数据 s1=forever, s2=more 6运行结果 7出现问题及解决方法 在输入程序时,少写了半边引号,调试时发现存在错误,找到了错误并加以改正。无论什么事,细心都是必不可少的,认真是解决问题的关键。 8实验心得 通过本次实验,对于函数的定义和声明,数组以及循环语句有了进一步的认识,掌握了字符数组和字符串函数的使用,以及与数组有关的常用算法。此次实验不是调用strlen()和strcat()函数,而是通过自己设计程序来进行字符串的连接以及计量字符串的长度,由此我学会了如何去理清自己的思路来设计程序。

C语言程序设计第四版第六章答案_谭浩强

1、用筛选法求100之内的素数。解: #include #include int main() {int i,j,n,a[101]; for (i=1;i<=100;i++) a[i]=i; a[1]=0; for (i=2;i int main() {int i,j,min,temp,a[11]; printf("enter data:\n"); for (i=1;i<=10;i++)

{printf("a[%d]=",i); scanf("%d",&a[i]); } printf("\n"); printf("The orginal numbers:\n"); for (i=1;i<=10;i++) printf("%5d",a[i]); printf("\n"); for (i=1;i<=9;i++) {min=i; for (j=i+1;j<=10;j++) if (a[min]>a[j]) min=j; temp=a[i]; a[i]=a[min]; a[min]=temp; } printf("\nThe sorted numbers:\n"); for (i=1;i<=10;i++) printf("%5d",a[i]); printf("\n"); return 0; } 3、求一个3×3的整型矩阵对角线元素之和。解: #include int main() { int a[3][3],sum=0; int i,j; printf("enter data:\n"); for (i=0;i<3;i++) for (j=0;j<3;j++) scanf("%3d",&a[i][j]); for (i=0;i<3;i++) sum=sum+a[i][i]; printf("sum=%6d\n",sum);

AT24C02串行E2PROM的读写

AT24C02串行E2PROM的读写 I2C总线是一种用于IC器件之间连接的二线制总线。它通过SDA(串行数据线)及SCL(串行时钟线)两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件:不管是单片机、存储器、LCD驱动器还是键盘接口。 1.I2C总线的基本结构采用I2C总线标准的单片机或IC器件,其内部不仅有I2C接口电路,而且将内部各单元电路按功能划分为若干相对独立的模块,通过软件寻址实现片选,减少了器件片选线的连接。CPU不仅能通过指令将某个功能单元电路挂靠或摘离总线,还可对该单元的工作状况进行检测,从而实现对硬件系统的既简单又灵活的扩展与控制。I2C总线接口电路结构如图1所示。 2.双向传输的接口特性传统的单片机串行接口的发送和接收一般都各用一条线,如MCS51系列的TXD和RXD,而I2C总线则根据器件的功能通过软件程序使其可工作于发送或接收方式。当某个器件向总线上发送信息时,它就是发送器(也叫主器件),而当其从总线上接收信息时,又成为接收器(也叫从器件)。主器件用于启动总线上传送数据并产生时钟以开放传送的器件,此时任何被寻址的器件均被认为是从器件。I2C总线的控制完全由挂接在总线上的主器件送出的地址和数据决定。在总线上,既没有中心机,也没有优先机。 总线上主和从(即发送和接收)的关系不是一成不变的,而是取决于此时数据传送的方向。SDA和SCL均为双向I/O线,通过上拉电阻接正电源。当总线空闲时,两根线都是高电平。连接总线的器件的输出级必须是集电极或漏极开路,以具有线“与”功能。I2C总线的数据传送速率在标准工作方式下为100kbit/s,在快速方式下,最高传送速率可达400kbit/s。 3.I2C总线上的时钟信号在I2C总线上传送信息时的时钟同步信号是由挂接在SCL时钟线上的所有器件的逻辑“与”完成的。SCL线上由高电平到低电平的跳变将影响到这些器件,一旦某个器件的时钟信号下跳为低电平,将使SCL线一直保持低电平,使SCL线上的所有器件开始低电平期。此时,低电平周期短的器件的时钟由低至高的跳变并不能影响SCL线的状态,于是这些器件将进入高电平等待的状态。 当所有器件的时钟信号都上跳为高电平时,低电平期结束,SCL线被释放返回高电平,即所有的器件都同时开始它们的高电平期。其后,第一个结束高电平期的器件又将SCL线拉成低电平。这样就在SCL线上产生一个同步时钟。可见,时钟低电平时间由时钟低电平期最长的器件确定,而时钟高电平时间由时钟高电平期最短的器件确定。 4.数据的传送在数据传送过程中,必须确认数据传送的开始和结束。在I2C总线技术规范中,开始和结束信号(也称启动和停止信号)的定义如图2所示。当时钟线SCL为高电平时,数据线SDA由高电平跳变为低电平定义为“开始”信号;当SCL线为高电平时,SDA线发生低电平到高电平的跳变为“结束”信号。开始和结束信号都是由主器件产生。在开始信号以后,总线即被认为处于忙状态;在结束信号以后的一段时间内,总线被认为是空闲的。

《VB程序设计》考试题型练习 答案

《VB 程序设计》考试题型练习 一. 填空 1. VB 中的对象具有 属性 、 事件 、和 方法 三种特性,它们是构成对象的三个基本要素。 2. VB 中的常量分为哪三种: 文字常量 、 符号常量(用户自定义常量) 系统内部常量 。 3. 变量的三要素是指: 变量的名 、 变量的数据类型 、 变量的值 。 4. VB 中日期型数据的表示格式为: #mm/dd/YYYY#或#mm-dd-YYYY# 。 5. 在VB 中,“\”是 整除 运算符;“/”是 浮点除 运算符。两个字符串可以使用连接符 &或+ 串接起来。 6. 2 22z y x z y x ++++的VB 表达式为 (x+y+z )/sqr(x^2+y^2+z^2) 。 7. a ac b b 242-+的VB 表达式为 (b+sqr(b^2-4*a*c))/(2*a) 。 8. 计时器控件的 Interval 属性用于设置Timer 事件发生的时间间隔,为了使计时器控件Timer1每隔0.5秒触发一次Timer 事件,应将该属性设置为 500 ;为了暂时关闭计时器,应把该计时器的 Enable 属性设置为False 。 二. 单选题 1. 如果要使VB 程序运行时不能对文本框中的内容进行编辑,需将文本框的哪个属性设置为True ( D )。 A )MultiLine B )Visible C )TabStop D )Locked 2. 表达式Right("asdf", 2)+Ucase("as" )的值为( A )。 A )dfAS B )asAS C )dfas D )asas 3. 执行如下语句: a =InputBox("Today", "Tomorrow", "Yesterday") 将显示一个输入对话框,在对话框的输入区中的默认值是( C )。 A) Today B) Tomorrow C) Yesterday D) Today Tomorrow Yesterday 4. 设a=3,b=5,则以下表达式值为真的是( B )。 A) a>=b And b>10 B) (a>b) Or (b>0) C) (a<0) Or Not (b>0) D) (-3+5>a) And (b>0)

ATMEGA16读写iic(TWI)(24c02) C语言程序

ATMEGA16读写iic(24c02) C语言程序测试通过 #include #include "I2C.h" #include "1602.h" #include "delay.h" /*通过AVR往I IC写数据,并通过串口把数据读出显示出来*/ //=============================================================== void UART_init(void) //UART初始化 { DDRD = 0x02; PORTD = 0x00; UCSRA = 0x02; /*无倍速*/ UCSRB = 0x18; /*允许接收和发送*/ UC SRC = 0x06; /*8位数据,1位停止位,无校验*/ UBRRH = 0x00; UBRRL = 12; /*9600*/ } //=============================================================== void USART_TXD(float data) //发送采用查询方式 { while( !(UCSRA & BIT(UDRE)) ); UDR=data; while( !(UCSRA & BIT(TXC )) ); UCSRA|=BIT(TXC); } void main(void) { unsigned char i; //LCD_init(); uart_init();//TART初始化 SEI(); //全局中断使能

while(1) {/* I2C_Write('n',0x00); I2C_Write('c',0x01); I2C_Write('e',0x02); I2C_Write('p',0x03); I2C_Write('u',0x04); */ i=I2C_Read(0x00); //LCD_write_char(0,0,i); USART_TXD(i); i=I2C_Read(0x01); //LCD_write_data(i); USART_TXD(i); i=I2C_Read(0x02); //LCD_write_data(i); USART_TXD(i); i=I2C_Read(0x03); //LCD_write_data(i); USART_TXD(i); i=I2C_Read(0x04); //LCD_write_data(i); USART_TXD(i); } } /*上面上主函数部分*/ #include #include "delay.h" //I2C 状态定义 //MT 主方式传输 MR 主方式接受#define START 0x08 #define RE_START 0x10 #define MT_SLA_ACK 0x18 #define MT_SLA_NOACK 0x20 #define MT_DATA_ACK 0x28 #define MT_DATA_NOACK 0x30 #define MR_SLA_ACK 0x40 #define MR_SLA_NOACK 0x48 #define MR_DATA_ACK 0x50 #define MR_DATA_NOACK 0x58

C语言程序设计实验实验指导书及答案

实验一熟悉C程序运行环境 班级学号姓名成绩 一、实验目的 1. 熟悉C语言Visual C++调试环境。 2. 掌握C程序的编辑、调试及运行。 二、实验内容 项目1. 调试并运行下面程序,并写出运行结果: #include <> int main() { printf(“Good morning!\n”); printf(“Hello,world!\n”); return 0; } 运行结果(注意,按照屏幕输出格式写): 项目2. 调试并运行下面程序,并写出运行结果: #include <> int main() { int a , b , sum; /*定义变量*/ a=23; b=56; /*为变量赋值*/ sum=a+b; /*计算两个变量的和*/ printf(“sum is %d\n”,sum); /*输出计算结果*/ return 0; } 运行结果:

项目3. 调试并运行下面程序,并写出运行结果: #include <> int max(int,int); int main() { int a , b , c; /*定义变量*/ a=23; b=56; /*为变量赋值*/ c=max(a,b); /*调用max函数,将得到的值赋给c*/ printf(“max is %d\n”,c); /*输出c的值*/ return 0; } int max(int x,int y) /*定义max函数,函数值为整型*/ { int z; /*定义变量*/ if(x>y) z=x; else z=y; return(z); /*将z的值返回*/ } 运行结果: 三、提高部分 1.试想,如果求10个数中的最大者,则程序该如何编写。 程序代码 运行结果:

VB程序设计答案

VB程序设计答案 第一章习题参考答案 一、填空题 1、对象事件驱动 2、编译运行模式解释运行模式 二、简答题 1、简述VB的特点。 答:①可视化的程序设计方法 ②面向对象的程序设计思想 ③事件驱动的编程机制 ④结构化的程序设计语言 ⑤高度的可扩充性 ⑥强大的数据库访问能力 ⑦支持动态数据交换 ⑧支持对象链接与嵌入 2、简述VB的安装过程。 答:①向光驱中放入VB安装光盘; ②计算机将运行自动安装程序,若没有,执行VB目录下的Setup.exe; ③根据提示逐一回答问题,并点击“下一步”; ④点击“完成”; 2、如何启动VB。 答:三种方法: ①单击“开始”按钮,选择“程序”菜单下的“Microsoft Visual Basic 6.0 中文版”菜单项并单击; ②双击桌面上的VB6.0快捷图标; ③在“开始”菜单的运行对话框中输入命令来启动VB; 第二章习题参考答案 一、选择题: 1-10、DCACD BCBBC 11-20、BADCA BBAAB 21-29、AACBB CDDC 二、填空题 1.窗体、控件 2.属性值 3.属性窗口设置、代码窗口设置 4.事件过程 5.对象名、下划线、事件名 6.Form_Click 第三章习题参考答案

一、选择题 1、B 2、C 3、A 4、B 5、A 6、C 7、C 二、填空题 1、11 字符型、字节型、整型、长整型、单精度型、双精度型、货币型、逻辑型、日期型、对象型、变体型。String、Byte、Integer、Long、Single、Double、Currency、Boolean 、Date、Object、Variant 2、双引号(英文)、# 3、ASCII、1、2 4、public、通用、Dim、Static、Private、Static 5、&、+、+ 6、Now()、Time、日期型 三、解答题 1、(3) 2、(1 ) 3、(1)常量(关键字)(2)字符型常量(3)逻辑型常量(4)变量(5)字符串常量(6)变量 (7)字符串常量(8)变量(9)日期型常量(题目应是#11/16/1999#)(10)数值型常量(单精度) 4、31 5、(1)(1+y/x)/(1-y/x) (2)x^3+3*x*y/(2-y) (3)sqr(abs(a*b-c^3)) (4)sqr(s*(s-a)*(s-b)*(s-c)) 6、 7、(1)13 (2)17 (3)#1999-11-12# (4)zxy123ABC 8、(1)19 (2)8.16666666666667 (3)5.25 (4)2 9、(1)-4 (2)2 . 82842712474619 (3)-3 (4)49 (5)”hello”(6)He 7)16 (8)“-459.65”(9)5 10、(4) 11、(2) 12、(4) 第四章习题参考答案 一、选择题: 1—7: DAABBCD 二、填空题 1.500.00% 2.将字号扩大为原来的二倍 3. B 三、编程题(略) 1.文本框、标签和命令按钮的名称分别为text1、label1、command1 Private Sub Command1_Click() Label1.caption=text1.text Command1.caption=text1.text

at24c02应用程序

/************************************************** 24C02.C 功能描述: PC端发送3个数据n0,n1,n2. n0=0,写,将n1写入n2地址中 n0=1,读,读出n1地址中的数据,n2不起作用,但必须有 收到一个字节后,将其地址值显示在数码管第1、2位上,数值显示在第5、6位上 读出一个字节后,将其地址值显示在数码管第1、2位上,读出的值显示在第5、6位上;**************************************************/ #define uchar unsigned char #define uint unsigned int #define Slaw0x0a; //写命令字 #define Slar 0xa1; //读命令字 #include "reg52.h" #include "intrins.h" sbit Scl=P2^1; //串行时钟 sbit Sda=P2^0; //串行数据 bit Rec; //接收到数据的标志 uchar RecBuf[3]; //接收缓冲区 #define Hidden 0x10; //消隐字符在字形码表中的位置 sbit we=P2^7; sbit du=P2^6; uchar code dispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf}; uchar code disptab[]={0x3f,0x6,0x5b,0x4f,0x66, 0x6d,0x7d,0x27,0x7f,0x6f,0x77,0x7c,0x39,0x5e, 0x79,0x71,0x0}; uchar DispBuf[6]; uchar code TH0V al=(65535-3000)/256; uchar code TL0V al=(65535-3000)%256; uchar code th1=0xfd; uchar code tl1=0xfd; //以下是中断程序,用于显示 void timer0() interrupt 1 { static uchar count; uchar tmp; P0|=0x3f; we=1; tmp=dispbit[count]; P0&=tmp; we=0; du=1;

C语言程序设计实验报告(实验1-12)

文档从网络中收集,已重新整理排版.word版本可编辑.欢迎下载支持. 《C语言程序设计》 实验报告 2013~2014学年第二学期 班级 姓名 学号 指导教师

实验一 实验项目名称:C程序的运行环境和运行C程序的方法 所使用的工具软件及环境:Visual C++ 6.0 一、实验目的: 1.了解在Visual C++ 6.0环境下如何编辑、编译、连接和运行一个C程序; 2.通过运行简单的C程序,初步了解C源程序的特点。 二、预习内容: 教材《C语言程序设计教程》第1章。 三、实验内容: 1. 在Visual C++ 6.0环境下输入并运行下面的程序: #include int main( ) { printf("This is a C program.\n"); return 0; } 2. 在Visual C++ 6.0环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序 无语法错误,然后运行程序,并观察分析运行结果。 #include int main( ) { int a,b,sum a=3; b=4; sun=a+b; print(“%d+%d=%d\n”,a,b,sum); return 0; } 四、实验结果: 1. 运行结果(或截图): This is a C program. Press any key to continue

2. (1) 改正后的源程序: #include int main( ) { int a,b,sum; a=3; b=4; sum=a+b; printf("%d+%d=%d\n",a,b,sum); return 0; } (2) 运行结果(或截图): 3+4=7 五、思考题: 1. 一个C程序上机的步骤有哪些? 答:上级输入与编辑源程序—对原程序进行编译–与库函数链接–运行可执行的目标程序。 2. 组成C程序的基本单位是函数,一个函数包括哪几个部分? 答:一个函数包括两部分:分别为函数头或函数首部和函数体。 成绩指导教师签名 实验二 实验项目名称:数据类型、运算符和表达式 所使用的工具软件及环境:Visual C++ 6.0 一、实验目的: 1.掌握整型、实型与字符型这三种基本类型的概念; 2.掌握常量及变量的使用方法; 3. 掌握基本算术运算符及其表达式的使用方法; 4. 掌握++、--运算符、赋值运算符及其表达式的使用方法。 二、预习内容:

VB程序的设计教程课后答案

课后习题解答 第一、二章: 1、简述VB6.0的主要特点 答:方便、直观的可视化设计工具;面向对象程序设计方法;事件驱动的编程机制;易学易用的应用程序集成开发环境;结构化程序设计语言;完备的联机帮助功能;强大的多媒体、数据库和网络功能。2、当正常安装VB6.0后,误把Windows子目录删除。当重新安装Windows后,是否需要再次安装VB6.0? 答:要重新安装的。因为安装VB6.0时,有些VB程序被系统自动安装在Windows目录下,所以一旦删除Windows子目录,就必须重新安装VB6.0。 3、Visual Basic 6.0分为学习版、专业版和企业版,如何知道所安装的是哪个版本? 答:在VB6.0的启动界面上,能显示对应的版本。 4、叙述建立一个完整应用程序的过程 答:首先建立用户界面的控件对象(简称控件);然后对控件属性进行设置;再对控件事件过程及编程; 保存应用程序;程序调试和运行。 5、Visual Basic 6.0有多种类型窗口,若要在设计时看到代码窗口,应怎样操作? 答:选择“视图”—>“代码窗口”命令或单击“工程资源管理器”窗口中的“查看代码”按钮。 6、当建立好一个简单的应用程序后,假定该工程仅有一个窗体模块。试问该工程涉及多少个要保存的文件? 若要保存该工程的所有文件,应先保存什么文件?再保存什么文件?若不这样做,系统会出现什么信息? 答:涉及两个文件要保存。先保存窗体文件(.frm),再保存工程文件(.vbp)。若先保存工程文件,系统也会先弹出“文件另存为”对话框,要求先保存窗体文件。 7、保存文件时,若不改变目录名,则系统默认的目录是什么? 答:系统默认的目录是VB98 8、安装Visual Basic 6.0后,帮助系统是否也已安装? 答:没有。VB6.0的帮助系统在两光盘上,即MSDN Library,其中还包含了VC、VFP等其他语言的帮助系统。 9、如何使用Visual Basic 6.0的帮助系统? 答:最方便的方法是选定要帮助的容,然后按F1功能键,这时系统打开MSDN Library查阅器,直接显示与选定容有关的帮助信息。 10、什么是类?什么是对象?什么是事件过程? 答:类是同类对象集合的抽象,它规定了这些对象的公共属性和方法; 对象是类的一个实例,对象包含三个要素:属性、方法和事件。 当在对象上发生了事件后,应用程序就要处理这个事件,而处理的步骤就是事件过程。 11、属性和方法的区别是什么? 答:属性是对象的特征,方法是对象的行为。前者有值,可以被赋值或引用;后者没有值,表示能够执行的操作。 12、当标签边框的大小由Caption属性的值进行扩展或缩小时,应对该控件的什么属性进行何种设置? 答:将该控件的Autosize属性值设置为true。 13、在VB6.0中,命令按钮的显示形式可以有标准的和图形的两种选择,它们通过什么属性来设置?若选 择图形的,则通过什么属性来装入图形?若已在规定的属性里装入了某个图形文件,但该命令按钮还是不能显示该图形,而显示的是Caption属性设置的文字,应怎样修改? 答:命令按钮的显示形式通过将Style属性值设置为Graphical来实现。通过Picture属性来装入图

相关主题
文本预览
相关文档 最新文档