vc++练习
- 格式:ppt
- 大小:434.00 KB
- 文档页数:30
写在前面在我还在上学的时候,我选择了C++,最初我用VC6作为我的IDE,我看过很多本C++的教材,有的适合我,有的不适合我,其中有一本叫《Visual C++2005入门经典》的书帮了我不少的忙。
因为通常的C++教材都只会介绍C++的语法什么的,很少会告诉我们如何去编译、运行,告诉我们什么是控制台程序,什么事Win程序,什么是GUI程序,C++能干什么,VC和C++的区别是什么。
现在有很多的朋友应该也有这些问题吧?学C++用C++也有几年了,算不上熟悉,算是初窥门径吧,我想我应该做点什么帮助一下那些和曾经的我一样困惑的朋友,特别是学生朋友,告诉他们他们所困惑的问题的答案。
记得我学C++的时候,没有人教,有的时候也走了不少弯路,甚至连调试也不会,也不知道可以通过看调用堆栈看调用次序,还自己慢慢的去搜索,好傻啊。
接下来我会做一个《Visual C++2010入门教程》系列,用来帮助初学者。
刚开始学的时候是很痛苦的,这个我深有体会,特别是身边还没有人能够指导一二的。
内容主要涵盖在Windows下面使用C++进行开发的常见内容,Visual Studio2010的使用,如何创建新项目,如何调试,如果配置项目属性等等,另外还会介绍Visual C++2010中新加如的一些内容,包括一些新的STL组建,一些新的语法支持等等。
由于本人水平有限,其中难免有错误,希望大家谅解,如果大家有发现问题还请务必及时指出来,否则误导了他人我就罪不容恕了。
注意,本教程非C++教程,不会教你C++,只会教你如何使用Visual C++2010去练习去学习其它C++教材上面的程序。
因此建议大家认真的去看其他的C++教程,在使用Visual C++2010实践的时候如果遇到问题可以到这里来参考。
推荐《C++Primer》、《C++程序设计语言》《Visual C++2008入门经典》。
第一章:关于Visual Studio、VC和C++的那些事首先,这三个东西有什么区别呢?VC和C++是相同的吗,有什么区别呢?我刚开始学C++的时候也有这样的问题,在这里我来替大家解释一下他们到底是什么。
vc++2010实验实训结果或结论VC++2010是微软推出的一款集成开发环境,主要用于C++程序的开发。
通过实验实训,我们对VC++2010进行了深入的学习和实践,掌握了其基本操作和功能,同时也对其在C++程序开发中的应用进行了探索和实践。
在实验实训过程中,我们获得了许多有价值的经验和知识,并得出了一些结论和结果。
首先,在实验实训中,我们深入了解了VC++2010的界面和功能。
VC++2010的界面清晰明了,功能丰富多样,包括代码编辑器、解决方案资源管理器、工具箱、属性窗口、输出窗口等。
我们学会了如何创建新项目、添加文件、编写代码、编译和运行程序等基本操作,也熟悉了VC++2010的各种工具和窗口的功能和用法。
其次,在实验实训中,我们掌握了VC++2010在C++程序开发中的应用。
我们通过实例分析和练习,学会了使用VC++2010进行C++程序的开发和调试。
我们编写了一些简单的C++程序,如Hello World程序、计算器程序、图形图像处理程序等,通过这些实践,我们深入了解了VC++2010在C++程序开发中的应用和技巧。
此外,在实验实训过程中,我们还发现了一些问题和解决了一些难点。
比如,在编写程序时遇到了一些错误和异常,我们通过调试和查阅资料,最终找到了解决方法。
我们还发现了一些VC++2010的一些特性和功能,如智能感知、代码重构、版本控制等,这些功能使得程序的开发和维护更加高效和便捷。
最后,通过实验实训,我们得出了一些结论和结果。
首先,VC++2010是一款功能强大、易用便捷的集成开发环境,适用于C++程序的开发。
其次,VC++2010在C++程序开发中具有丰富的功能和工具,包括代码编辑器、调试工具、版本控制等,能够满足程序开发的各种需求。
再次,通过实验实训,我们对VC++2010有了深入的了解和掌握,获得了宝贵的经验和知识,这将对我们今后的学习和工作有很大的帮助。
总之,通过VC++2010实验实训,我们对VC++2010有了全面的了解和掌握,对C++程序的开发也有了更深入的理解和实践。
《Visual C++ 程序设计基础》练习题第一部分面向过程程序设计南通大学计算机科学与技术学院2006年3月第一章VC++语言的基础知识和简单的语句1.C++语言程序由〖C〗组成。
A)子程序B)过程C)函数D)主程序和子程序2.以下各标识符中,合法的用户标识符组为〖D〗。
A)PAd,P#d,b-b,abc,_0123,ssipedB)cin,a10,CPP,float,del_word,signedC)void,max,hiy,<fr>,list,*jerD)a,temp,_isw,INT,keep,wind3.在VC++中,char类型数据占〖A〗个字节,int类型数据占〖C〗个字节,short类型数据占〖B〗个字节,long类型数据占〖C〗个字节,float类型数据占〖C〗个字节,double类型数据占〖D〗个字节。
A)1 B)2 C)4 D)84.以下语句〖B〗。
int a=-2L; cout << a << endl;A)赋值不合法B)输出值为-2 C)输出为不确定值D)输出值为25.在VC++中,以下语句的输出为〖D〗。
short int k=-1;cout << k << ',' << (unsigned short)k <<endl;A)-1,-1 B)-1,32767 C)-1,32768 D)-1,655356.若有以下说明语句,则该语句〖B〗。
char s='\092';A)使s的值包含1个字符B)说明不合法,s的值不确定C)使s的值包含4个字符D)使s的值包含3个字符7.若a,b均为int型变量,为了将10赋给a,将20赋给b,则对应以下cin语句的正确输入方式为〖B〗。
(<CR>代表回车换行,_代表空格)。
cin >> a >> b;A)1020<CR> B)10_20<CR> C)10,20<CR> D)20_10<CR>8.以下语句的输出为〖D〗。
练习题一、选择题1.设有int x=1,y=2,z=3;下列关于语句的描述中,是错误的。
A.if(x>3) if(y>5) else z=6 ;z=7;B.if(x>=3) z=6;else z=7; else z=8;C.if(x<3) for(z=6;z<9;z++) ;else z=7;D.if(x<3) switch(z){ case 1: z=6;} else z=7;2.设有int x,a,b,c;下列合法的if语句是。
A.if(a==b)x++; B.if(a=<b)x++;C.if(a<>b)x++; D.if(a=>b)x++;3.设int a=1,b=2,c=3,d=4;则条件表达式a<b?a:c<d?c:d的值为。
A.1 B.2 C.3 D.4 4.下列关于switch语句,说法不正确的是。
A.switch语句后的一对大括号不能省略B.每一个case的出现顺序不影响程序执行的结果C.switch语句中的default子句只能放在最后D.每个case后的常量表达式的值必须互不相同5.以下关于if语句的错误描述是。
A.条件表达式可以是任意的表达式B.条件表达式只能是关系表达式或逻辑表达式C.条件表达式的括号不可以省略D.与else配对的if语句是其之前最近未配对的if语句6.对于程序段:int a=1,b=2,c=3;if(a=0)cout<<b<<'\n';else cout<<c<<'\n';执行上述语句序列后,下列说法正确的是。
A.a的值为0,输出2 B.a的值为1,输出2C.a的值为0,输出3 D.a的值为1,输出37.执行下列程序段后,a的值为。
int a=0;if(a>0) a++;else if(a<4)if(a<3)a+=3;else a+=4;else a+=5;A.2 B.3 C.4 D.58.执行下列程序,若输入1,则输出的结果是。
一选择题(24分,每小题2分)1.C程序的执行是从一个A.本程序的main函数开始的,到main函数结束B.本程序文件的第一个函数开始,到本文件最后一个函数结束C.本程序main函数开始,到本程序最后一个函数结束D.本程序第一个函数开始,到本程序main函数结束2.以下程序的输出结果为()。
main( ){ int i=010,j=10;printf("%d,%d\n",i++,j--);}A 11,9B 9,10C 8,10D 9,93.设a为int型变量,执行下列赋值语句后,a的取值分别是()。
a=125.534;a=20.0/3;a=(int)125.521%4;a=5<<2;A 125,6,31,1B 125,6,1,20C 125,6.666666,31,20D 125.534,6.666666,2,204.设i和k都是int类型,则for循环语句()。
for(i=0,k=-1;k=1;i++,k++) printf("****\n");A 循环结束的条件不合法B 循环体一次也不执行C 循环体只执行一次D 是无限循环5.C语言规定:在一个源程序中,main函数的位置A.必须在最开始B.必须在系统调用的库函数后面C.可以任意D.必须在最后6.函数调用语句:fseek(fp,-10L,2);的含义是()。
A 将文件位置指针从文件末尾处向文件头的方向移动10个字节B 将文件位置指针从当前位置向文件头的方向移动10个字节C 将文件位置指针从当前位置向文件末尾方向移动10个字节D 将文件位置指针移到距离文件头10个字节处7.以下程序的输出结果为()。
main( ){ char s1[40]="country",s2[20]="side";int i=0,j=0;while(s1[i]!='\0') i++;while(s2[j]!='\0') s1[i++]=s2[j++];s1[i]=0;printf("%s\n",s1);}A sideB countryC sidetryD countryside8.下列说法不正确的是()。
本练习假设:整数int为4字节,运行环境为VC一、整数位数有关的问题一、输入一个整数,判定它是几位数?扩展:编制一个函数,参数为整数,返回该整数的位数。
二、编制一函数,取得一个整数的某一名的数字。
测试函数的例子:二、关于整数的几个题目一、输入两个正整数m和n,求其最大公约数和最小公倍数。
算法分析:采纳辗转相除法,先求出最大公约数d,然后求最小公倍数c=m*n/d。
辗转相除法:余数=大数%小数,然后将小数和余数再作辗转相除。
拓展:编出求最大公约数的函数。
测试上述函数:二、求出所有的水仙花数。
水仙花数是一个三位数,其列位数字的立方和等于该数。
例如153=1^3+5^3+3^3。
按位循环:类似地:能够求出100之内的勾股数,如3^2+4^2=5^2。
三、关于数组的几个题目求2100的精准值。
参考:运行结果:后面十多位满是0,因此是近似值。
如何求精准值呢?(关键是如何保留每一名)运行结果:扩展问题:如何求出100!的精准值?缺点:若是乘以一个专门大的数如20亿,会使高一名与进位相加后溢出。
四、大数运算用整数数组寄存每一名,最高位用-1存储,如12存为:a[0]=2,a[1]=1,a[2]=-1。
一、输入和存储大数。
编制一函数,将合法数字组成的字符串表示的大数按位拆分存储到整数数组中,最高位前存储-1。
二、输出和取得数字串。
编制一函数,将大数转换成字符串。
3、大数相加。
编制一函数,实现两个大数相加。
验证上面的函数:运行结果:扩展:能够编制大数相减、相乘、相除、乘方、开方等运算。
有了这些运算,计算100!或2的100次方的精准值将变得很简单。
vc编程设计例题100例VC编程是指使用Visual C++进行程序设计的一种方法。
在学习VC 编程的过程中,通过实际的例题练习,可以更好地掌握编程技巧和应用。
下面将介绍一些VC编程设计例题,供大家参考。
1. 编写一个程序,实现两个整数的加法运算,并输出结果。
2. 编写一个程序,实现两个整数的乘法运算,并输出结果。
3. 编写一个程序,实现两个整数的除法运算,并输出结果。
4. 编写一个程序,实现两个整数的取余运算,并输出结果。
5. 编写一个程序,实现两个整数的比较,并输出较大的数。
6. 编写一个程序,实现两个整数的比较,并输出较小的数。
7. 编写一个程序,实现两个整数的平均值计算,并输出结果。
8. 编写一个程序,实现两个整数的最大公约数计算,并输出结果。
9. 编写一个程序,实现两个整数的最小公倍数计算,并输出结果。
10. 编写一个程序,实现一个整数的阶乘计算,并输出结果。
11. 编写一个程序,实现一个整数的平方计算,并输出结果。
12. 编写一个程序,实现一个整数的立方计算,并输出结果。
13. 编写一个程序,实现一个整数的平方根计算,并输出结果。
14. 编写一个程序,实现一个整数的立方根计算,并输出结果。
16. 编写一个程序,实现一个整数的正弦计算,并输出结果。
17. 编写一个程序,实现一个整数的余弦计算,并输出结果。
18. 编写一个程序,实现一个整数的正切计算,并输出结果。
19. 编写一个程序,实现一个整数的反正弦计算,并输出结果。
20. 编写一个程序,实现一个整数的反余弦计算,并输出结果。
21. 编写一个程序,实现一个整数的反正切计算,并输出结果。
22. 编写一个程序,实现一个整数的自然对数计算,并输出结果。
23. 编写一个程序,实现一个整数的指数计算,并输出结果。
24. 编写一个程序,实现一个整数的对数计算,并输出结果。
25. 编写一个程序,实现一个整数的四舍五入计算,并输出结果。
26. 编写一个程序,实现一个整数的向上取整计算,并输出结果。
word完美格式《C语言程序设计基础》教材参考答案包括各单元:一.随堂练习二.单元总结三.单元练习四.实训指导单元一程序设计宏观认识一.随堂练习【随堂练习1-1】1.根据上述示例模仿编程,输入正方形的边长,计算其面积。
#include <stdio.h>void main( ){ int a,s; //数据准备,边长a,面积sprintf("请输入正方形的边长:");scanf("%d",&a); //数据输入s=a*a; //数据计算printf("该正方形的面积为:%d.\n",s);}【随堂练习1-2】1.下面哪些标识符属于合法的用户自定义标识符:Main、void、_num、my$、a*、N4、3m、a-2答:合法的用户自定义标识符是:Main、_num、N42.结合【例1.2】指出程序代码中所用到的标识符哪些是关键字,哪些是预定义标识符,哪些是用户自定义标识符。
答:关键字:void、int预定义标识符:include、main、printf、scanf用户自定义标识符:a、b、c3.分析【例1.2】中函数的结构,包括函数首部(函数返回值类型、函数名、形式参数)、函数体语句(说明语句、可执行语句)。
答:函数首部: void main( ),其中函数返回值类型为void、函数名为main、形式参数无;函数体语句:{}内的语句为函数体,其中:说明语句为int a,b,c;,其余为可执行语句。
【随堂练习1-3】1.在VC++6.0环境中完成【例1.2】程序开发过程。
(略)2.查阅【例1.2】所对应的工程文件夹,了解相关文件的含义。
工程文件夹中:.CPP:用C/C++语言编写的源代码文件。
.DSP:VC开发环境生成的工程文件,VC4及以前版本使用MAK文件来定义工程。
项目文件,文本格式。
.DSW:VC开发环境生成的WorkSpace文件,用来把多个工程组织到一个WorkSpace中。
在VC++开发环境进行编写、编译、调试、显示结果的开发全过程例题:显示“I am a student”字符串,并通过简单的程序了解和熟悉运用VC++开发环境进行编写、编译、调试、显示结果的过程。
解答:该程序非常简单,如下代码所示,运用了cout输出流对象代表标准输出显示器,<<代表后边的字符串向显示器输出的方向。
#include <iostream.h>void main(){cout<<”I am a student”<<endl; }编辑过程:图1-1 新建对话框①编辑编辑是将C++源程序输入计算机的过程。
在Visual C++6.0主界面下,点击File菜单,选择New菜单项,即可出现New对话框,如图1-1所示。
在弹出窗口中的Files标签页下,选择C++ Source File。
在选项卡右面的文件编辑框里输入文件名如“Exa”,在目录编辑框里输入文件路径,如“d:\test”。
点击确认按钮。
将出现编辑窗口,如图1-2所示。
在图1-2所示的右端编辑窗口里输入以下C++源程序并保存文件。
图1-2 编辑窗口②编译编译是使用系统提供的编译器将文本文件Exa.cpp生成机器语言的过程,结果为Exa.obj,由于没有得到系统分配的绝对地址,还不能直接运行,如图1-3所示。
选择编译菜单下的编译 Exa.cpp,计算机将完成对当前源程序的编译。
按提示建立默认工程空间。
编译无错时,将源程序Exa.cpp编译为目标文件Exa.obj。
图1-3 编译源程序③连接连接是将目标文件Exa.obj转换为可执行文件Exa.exe的过程。
如图1-4所示选择编译菜单下的构件 Exa.exe。
连接无错时,将目标文件Exa.obj连接为Exa.exe。
图1-4 源程序④运行运行是执行可执行文件Exa.exe,屏幕输出运行结果。
如图1-5所示选择编译菜单下的执行 Exa.exe。