如何写vc实验报告
篇一:VC++实验报告 (2) VC++实验报告 班号:0904101 学号:090410123 姓名:仲维祎
实验一VC++开发环境的熟悉和C++基础知识实验 一、实验目的
1. 掌握C++语言的特点。
2. 掌握C++的各种数据类型及基本运算。 3. 掌握C++各种控制结构及使用技巧。
4. 掌握C++的函数、数组、指针的相关概念和使用方法。 5. 灵活运用C++相关基础知识进行综合程序设计。 6. 回顾面向过程程序设计方法。 7. 熟悉Visual C++的开发环境
8.掌握用应用程序向导创建一个控制台应用项目的方法。 9.掌握源代码文件的新建、打开、保存和关闭等基本操作。 10.掌握Visual C++项目的编译、连接和执行。
11.掌握代码简单语法错误修正和调试的一般过程。 二、实验知识点概念
注意C++中同C的不同之处,包括数据类型,输入输出等相关的差异。 三、实验题目
1. 采用插入排序法,输入10个整数按升序排序后输出。要求编写一个通用的插入排序函数,它带有三个参数,第一个参数是含有n个元素的数组,这n个元素已按升序排序;第二个参数给出当前数组中元素个数;第三个参数是要插入的整数。该函数的功能是将一个整数插入到数组中,然后进行排序。另外还需要一个用于输出数组元素的函数,要求每一行输出5个元素。
2. 有5个学生,每个学生的数据结构包括学号、姓名、年龄、C++成绩,数学成绩和英语成绩、总平均分,从键盘输入5个学生的学号、姓名、3门课的成绩,计算3门课的总平均分,最后将5个学生的数据输出。要求各个功能用函数实现。
3. 对程序加入断点简单调试。 四、程序思路 五、程序源代码 1:代码如下 #include
using namespace std;
void (char iArray,int nCount,int nNumber) {
int i=nCount-1,j=0; char *iArray2;
iArray2=iArray;
*(iArray2+nCount)=nNumber;//多分配一个空间给传入数据 for(i;i>=0;i--) {
if(nCount==1) *iArray=nNumber; if (*(iArray2+i) { j=*(iArray2+i);
iArray2[i]=iArray2[i+1]; iArray2[i+1]=j; } }
cout for(i=0;i {cout int main {
char a[80]={0},i,sArray=0; for(i=0;i {
cout cin>>a[i]; if (a[i]=0) {
(a,sArray+1,a[i]); sArray++; } }
return 1; }
2:代码如下: #include
using namespace std; class InfStud {
public: int id;
char name[20]; int age; int cpp; int math; int eng; void print; int all; };
int InfStud::all {
int all;
all=math+cpp+eng;
} return all; };
void InfStud::print {
cout }; void main {
InfStud student[5]; int i=0,j; for(i;i { coutstudent[i].id>>student[i].name>>student[i].age>>student[i].cpp>>student[i].eng>>student[i].math; } 篇二:VC实验报告 实验报告
班级:网络Z091 学号:094552 姓名:李丹 一、 1. 2. 二、 1. 2. 三、
1. 实验目的 掌握数据库的基本知识、ODBC程序设计 掌握列表框和组合框控件 实验内容 在VC++6.0中编写程序 数据库应用程序基本设计和购物表设计 编程序 数据库
步骤:设置->控制面板->管理工具->数据源->添加->MicroSoft Access Driver(*mdb) 选择(刚建好的数据库)、数据源名(comp)
定义的变量:CCompanySet m_set;(CCompanySet自己添加的类,基类为CRecordSet)CListCtrl m_list; CString m_chax; ⑴初始化:
void CCompanyView::OnInitialUpdate {
m_list.InsertColumn(0,\"num\"); m_list.InsertColumn(1,\"sex\"); m_list.InsertColumn(2,\"age\"); m_list.InsertColumn(3,\"wage\"); m_list.SetColumnWidth(0,100); m_list.SetColumnWidth(1,100); m_list.SetColumnWidth(2,100); m_list.SetColumnWidth(3,100); CString sql=\"select * from comp\";
m_set.Open(AFX_DB_USE_DEFAULT_TYPE,sql);//打开记录集 int i=0;
while(!m_set.IsEOF) {
m_list.InsertItem(i,m_set.m_num); m_list.SetItemText(i,1,m_set.m_sex); CString str;
str.Format(\"%d\ m_list.SetItemText(i,2,str);
m_list.SetItemText(i,3,m_set.m_wage); m_set.MoveNext; i++; }
m_set.Close; }
⑵“添加”调出新对话框(IDD_DIALOG1)
创建一个新类CCompDlg,并添加头文件” #include \"CompDlg.h\"” 及成员变量(CString m_num; int m_sex; CString m_wage; int m_age;) void CCompanyView::OnAdd {
CCompDlg dlg;
if(dlg.DoModal==IDOK) {
m_set.Open(AFX_DB_USE_DEFAULT_TYPE,NULL); m_set.AddNew; m_set.m_num=dlg.m_num; if(dlg.m_sex==0) m_set.m_sex=\"男\"; else
m_set.m_sex=\"女\";
m_set.m_age=dlg.m_age; m_set.m_wage =dlg.m_wage; m_set.Update; m_set.Close; } }
⑶“删除”
void CCompanyView::OnDel {
int i=m_list.GetSelectionMark;
if(i this->MessageBox(\"先选取记录\"); else {
CString xnum1; char xnum[10];
int x=m_list.GetItemText(i,0,xnum,10); xnum1.Format(\"%s\
CString sql=\"select * from comp where num='\"+xnum1+\"'\"; m_set.Open(AFX_DB_USE_DEFAULT_TYPE,sql); m_set.Delete; m_set.Close; } }
⑷“浏览”
void CCompanyView::OnScan {
m_list.DeleteAllItems; CString sql=\"select * from comp\";
m_set.Open(AFX_DB_USE_DEFAULT_TYPE,sql);int i=0; while(!m_set.IsEOF)
m_list.InsertItem(i,m_set.m_num); m_list.SetItemText(i,1,m_set.m_sex); CString str;
str.Format(\"%d\ m_list.SetItemText(i,2,str);
m_list.SetItemText(i,3,m_set.m_wage); m_set.MoveNext; i++; }
m_set.Close; }
⑸“修改”
void CCompanyView::OnEdit {
CCompDlg dlg;
int i=m_list.GetSelectionMark; if(i {
this->MessageBox(\"先选取记录\"); return; }
CString xnum0,xnum1; char xnum[10];
int x=m_list.GetItemText(i,0,xnum,10); xnum1.Format(\"%s\ dlg.m_num=xnum1; xnum0=xnum1;
CString str=\"select * from comp where num='\"+xnum0+\"'\"; m_set.Open(AFX_DB_USE_DEFAULT_TYPE,str);dlg.m_num=m_set.m_num; dlg.m_age=m_set.m_age;
dlg.m_wage=m_set.m_wage; if(m_set.m_sex==\"男\") dlg.m_sex=0; else
dlg.m_sex=1; dlg.DoModal; m_set.Edit;
m_set.m_num=dlg.m_num; m_set.m_age=dlg.m_age; m_set.m_wage=dlg.m_wage; if(dlg.m_sex==0) m_set.m_sex=\"男\"; m_set.m_sex =\"女\"; m_set.Update; m_set.Close; }
⑹“查询”
void CCompanyView::OnQuery {
this->UpdateData; CString sql; sql=\"select * from comp where num='\"+m_chax+\"'\"; m_set.Open(AFX_DB_USE_DEFAULT_TYPE,sql); m_set.Requery ; if(m_set.IsEOF) {
AfxMessageBox(\"ERROR\"); return ; }
m_list.DeleteAllItems; int i=0;
while(!m_set.IsEOF) {
m_list.InsertItem(i,m_set.m_num); m_list.SetItemText(i,1,m_set.m_sex); CString str;
str.Format(\"%d\ m_list.SetItemText(i,2,str);
m_list.SetItemText(i,3,m_set.m_wage); m_set.MoveNext; i++; }
m_set.Close; }
2. 购物表设计
添加了两个结构体 struct GoodsType {
char * type; char * name; int price; }goods={
\"日常用品\牙刷\ \"日常用品\牙膏\ \"日常用品\毛巾\
搜集整理 仅供参考