:
String^>^args){
array^names={"李红","张斌","赵强","王伟","魏义"};
array^score={99,88,66,77,60};
Array:
:
Sort(score,names);//Sortthearray
for(inti=0;iLength;i++)
Console:
:
WriteLine("names[{0}]:
{1}{2}",i,names[i],score[i]);
}
7.有如下程序运行程序时,单击命令按钮,在文本框显示91357
intfun(array^a)
{inti,j;
j=0;
for(i=0;iLength;i++)
if(a[i]%2==1)
{
a[j]=a[i];j++;
}
returnj;
}
private:
System:
:
Voidbutton1_Click(System:
:
Object^sender,System:
:
EventArgs^e){
array^b={9,1,4,2,3,6,5,8,7};
inti,n;
n=fun(b);
for(i=0;iText+=b[i]+"";
}
8.有如下程序其主要功能是生成大于等于10小于等于100的9个随机数
intmain()
{
intseed;
Random^randObj=gcnewRandom(seed);
for(intj=0;j<9;j++)
Console:
:
WriteLine("{0,4}",randObj->Next(10,100));
}
9.有如下程序
private:
System:
:
Voidbutton1_Click(System:
:
Object^sender,System:
:
EventArgs^e){
intindex;
index=this->textBox1->Text->IndexOf(this->textBox2->Text);
if(index>=0)
this->textBox3->Text="在字符串\""+textBox1->Text+"\"中找到字符串\""+textBox2->Text+"\"";
}
程序运行结果是:
在字符串“”中找字符串“”。
IndexOf的返回值index为_1_
4.有如下程序其主要功能是:
设置背景色,使用DrawLine方法画一条直线__
private:
System:
:
Voidbutton1_Click(System:
:
Object^sender,System:
:
EventArgs^e){
Graphics^g;
g=pictureBox1->CreateGraphics();
Pen^redPen=gcnewPen(Color:
:
Red,3.0f);
g->DrawLine(redPen,0,10,400,300);
deleteredPen;
deleteg;
}
5.有如下程序,其功能是将该图像的各个像素依次翻转,即分别255减去相应的RGB分量,补充完成下面程序。
private:
System:
:
Voidbutton1_Click(System:
:
Object^sender,System:
:
EventArgs^e){
Bitmap^image1;
image1=gcnewBitmap("E:
\\BMP\\ah1.bmp",true);
intx;
inty;
for(x=0;x__Width_______;x++){
for(y=0;yHeight;_Height_________){
Colorc=image1->_Getpixel____________(x,y);//获得像素的颜色
ColornewColor=Color:
:
FromArgb(255-c.R,255-c.G,255-c.B);
image1->_setpixel________(x,y,newColor);//设置像素翻转后的颜色
}
}
pictureBox1->Image=image1;
}
6.有如下程序,其功能是随机画200个圆,补充完成下面程序。
private:
System:
:
Voidbutton1_Click(System:
:
Object^sender,System:
:
EventArgs^e){
intx,y,n;
Graphics^g;
g=this->pictureBox1->CreateGraphics();
Pen^pen1=gcnewPen(Color:
:
Black);
Random^randObj=gcnew_Random_________();//随机类对象
SolidBrush^brush1=gcnewSolidBrush(Color:
:
Red);
intw=pictureBox1->Width;
inth=pictureBox1->Height;
for(n=1;n<=200;n++){
__w_______=randObj->Next(w);
___h______=randObj->Next(h);
g->FillEllipse(brush1,x,y,10,10);
g->DrawEllipse(pen1,x,y,10,10);
}
}
第四章
1.单选按钮控件和复选按钮控件的英文名称为什么?
哪个属性表示是否表示被选中?
RadioButton控件称为单选按钮控件,CheckBox控件称为复选框。
Checked属性:
是否被选中,如果被选中,则其Checked属性为True
2.ListBox控件通过哪些属性控制列表项?
Items属性:
设置列表框中的列表项。
SelectedItem属性:
获取或设置ListBox中的当前选定项。
SelectedIndex属性:
获取当前选定项的索引。
3.ComboBox控件具有哪些样式?
通过什么属性控制?
DropDownStyle属性用来设置组合框的样式,分别为:
DropDown(下拉式组合框);Simple(简单组合框);DropDownList(下拉式列表框)。
4.PictureBox控件常用于图形设计和图像处理应用程序,哪个属性表示装入的图像?
哪个属性控制显示图像的方式?
Image属性:
设置控件显示的图像;SizeMode属性:
指示如何显示图像。
5.Timer控件的主要作用是什么?
它是按一定时间间隔周期性地自动触发事件的控件。
Enabled(默认属性):
设置定时器是否正在运行;Interval属性:
设置定时器开始计时之间的时间(以毫秒为单位);Tick事件:
当定时器处于启动状态时,每隔一个Interval时间,触发一次该事件。
6.MessageBox用于向用户显示一些通知消息,用法是怎样的?
消息框中的标题、消息文本、按钮和图标都可以通过给该方法传递参数来确定。
该方法的返回值是一个DialogResult枚举。
例如:
MessageBox.Show("消息框显示内容","消息框的标题",MessageBoxButtons.YesNoCancel,MessageBoxIcon.Information)
方法Show的参数说明如下:
(1)第一个参数是要显示的消息文本,第二个参数是消息框的标题。
(2)第三个参数用以定义MessageBox上将显示哪些按钮。
第四个参数是消息框上显示的图标
7.在文本框内输入x的值,利用公式
,
求sinx的近似值,直到最后一项的绝对值小于10-6为止。
编写程序,参考如下界面。
参考代码设计如下。
private:
System:
:
Voidbutton1_Click(System:
:
Object^sender,System:
:
EventArgs^e){
doublex,Sinx,Item;
inti,f;
Sinx=0;
x=Convert:
:
ToDouble(textBox1->Text);
i=1;
f=1;
Item=x;
while(Item>=0.000001)
{Sinx+=f*Item;
f=-f;
i+=2;
Item*=x*x/(i*(i-1));
}
textBox2->Text=Convert:
:
ToString(Sinx);
}第五章
1.VC++.NET使用MenuStrip控件创建下拉菜单,使用ContextMenuStrip控件创建快捷菜单,通过设置窗体的ContextMenuStrip属性将快捷菜单和窗体关联起来。
2.在VS2005中,工具栏设计使用ToolStrip控件和ToolStripButton控件建立;状态栏则使用StatusStrip控件。
第六章
1..NET平台提供了哪些对话框控件?
OpenFileDialog、SaveFileDialog、ColorDialog、FontDialog和PrintDialog等。
2.在.NET中,提供了实现两个对话框OpenFileDialog类和SaveFileDialog类,如何设置特定的文件类型?
使用Filter属性设置或获取文件名筛选字符串,用于筛选具有特定扩展名的文件。
3.RichtextBox控件可以对什么类型的文件操作,支持哪些操作方法?
.rtf格式文件及ASCII文本格式的文件,支持如下各种操作方法:
Clear方法:
清空RichTextBox中的文本内容。
Copy方法:
将RichTextBox中的选定内容复制到剪贴板中。
Cut方法:
将RichTextBox中的选定内容剪切到剪贴板中。
Find方法:
在RichTextBox的文本内容中查找指定的字符串。
Paste方法:
粘贴剪贴板中的内容等。
第七章
1.通常使用的关系数据库可分为两类,一类是文件数据库,如Access、FoxPro、Paradox、dBase等等,另一类是客户/服务器数据库,如SQLServer、Oracle、Sybase等等。
2.文件数据库常用于小型的、单机的数据库解决方案,实现起来比较简单。
而客户/服务器数据库常用于大型的、分布式的系统解决方案。
3.DataGridView控件的作用如何?
通过哪种属性实现数据绑定?
该控件可以显示和编辑来自多种不同类型的数据源的表格数据,通过设置DataSource属性可以将数据绑定到DataGridView控件。
4.BindingNavigator控件是实现在窗体上导航和使用数据的一种方式。
第八章
1.一般而言,图形设计过程分为哪两步?
一是创建Graphics对象;二是使用Graphics对象的方法绘图、显示文本或处理图像。
2.了解基本的画笔和画刷使用的使用。
画笔通常具有宽度、样式和颜色三种属性,用Pen类创建画笔对象。
画刷用于指定填充的特性,其中SolidBrush类主要用途是将某一特定区域填入单一的颜色。
3.Graphics类提供了大量的绘图方法,下面方法的意思是什么?
DrawArc绘制一段弧线。
DrawBezier绘制贝塞尔曲线。
DrawEllipse绘制一个椭圆。
DrawLine绘制一条连接由坐标对指定的两个点的线段。
DrawPie绘制一个扇形。
相应的,存在着填充方法。
4.窗体上用鼠标画折线的程序如下,当首次鼠标按下时,即确定折线的起始点flat=1;下次再按下鼠标时flat=0,划线,同时将当前点作为下次画直线的起始点。
intx1,y1;
intflat;
private:
System:
:
VoidForm1_Load(System:
:
Object^sender,System:
:
EventArgs^e){
flat=1;
}
private:
System:
:
VoidForm1_MouseDown(System:
:
Object^sender,System:
:
Windows:
:
Forms:
:
MouseEventArgs^e){
intx2,y2;
Graphics^g;
g=this->CreateGraphics();
Pen^p1=gcnewPen(Color:
:
Red);
if(flat==1){
x1=e->X;
y1=e->Y;
flat=0;
}
else{
x2=e->X;
y2=e->Y;
g->DrawLine(p1,x1,y1,x2,y2);
x1=x2;
y1=y2;
}
deletep1;
deleteg;
}第九章
1.将图片框1的图像各像素P(i,j)做上下对称变换,然后在图片框2显示。
private:
System:
:
Voidbutton1_Click(System:
:
Object^sender,System:
:
EventArgs^e){
Color^c=gcnewColor();
Bitmap^box1=gcnewBitmap(pictureBox1->Image);
Bitmap^box2=gcnewBitmap(pictureBox2->Image);
for(inti=0;i<=box1->Width-1;i++)
{
for(intj=0;j<=box1->Height-1;j++)
{
Colorc=box1->GetPixel(i,j);
box2->SetPixel(box1->Width-i-1,box1->Height-j-1,c);
}
}
pictureBox2->Refresh();//刷新
pictureBox2->Image=box2;//图片赋到图片框中
}
2.位图图像的浮雕
处理的算法是
g(i,j)=f(i,j)-f(i+1,j+1)+常数
式中,g(i,j)为处理后图像的像素值,f(i,j)为源图像的像素值,f(i+1,j+1)为一个相邻像素的值。
常数一般取128。
即
rr=r1-r2+128
gg=g1-g2+128
bb=b1-b2+128
式中,r1、g1、b1分别为为源图像的像素f(i,j)的红、绿、蓝分量值;r2、g2、b2分别为一个相邻像素f(i+1,j+1)的红、绿、蓝分量值,rr、gg、bb分别为处理后图像的像素g(i,j)的红、绿、蓝分量值。
g(i,j)的值必须为正且小于或等于255,因此计算g(i,j)的公式如下:
g(i,j)=min{│f(i,j)-f(i+1,j+1)+128│,255}
private:
System:
:
Voidbutton1_Click(System:
:
Object^sender,System:
:
EventArgs^e){
Bitmap^box1=gcnewBitmap(this->pictureBox1->Image);
Bitmap^box2=gcnewBitmap(this->pictureBox2->Image);
inti,j,