当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

上海交通大学:《C++程序设计与实践》课程教学资源(学习资料)C++练习(题目)

资源类别:文库,文档格式:PDF,文档页数:9,文件大小:163.24KB,团购合买
点击下载完整版文档(PDF)

一、选择 1.C+是() A.面向对象的程序设计语言 B.结构化程序设计语言 C.既是面向对象的程序设计语言,又是结构化程序设计语言 D.非结构化程序设计语言 2.下列合法的标识符为() A.abde+ B.#KSJF C.67KDJ D.DK3_ 3.如下程序段: inta=14,b=15,x: char c='A'; x=(a&b)&(c using namespace std; int main() int i,a; for(i=1:i<-10:i++) switch (i%4) case 0:a=0; case 1:a=1; case 2:a=2; case 3:a=3: cout<<a; } A. 1230123012 B.0123012301 C. 2103210321 D. 3333333333 5.下面程序的输出结果是()

一、选择 1.C++是( ) A.面向对象的程序设计语言 B.结构化程序设计语言 C.既是面向对象的程序设计语言,又是结构化程序设计语言 D.非结构化程序设计语言 2. 下列合法的标识符为( ) A. abde+ B. #KSJF C. 67KDJ D. DK3_ 3. 如下程序段: int a=14,b=15,x; char c='A'; x=(a&&b)&&(c using namespace std; int main() { int i,a; for (i=1; i<=10; i++) { switch (i%4) { case 0: a=0; case 1: a=1; case 2: a=2; case 3: a=3; } cout<<a; } } A. 1230123012 B. 0123012301 C. 2103210321 D. 3333333333 5. 下面程序的输出结果是( )

#include using namespace std: int mainO) { int a,b; for(a=1,b=1:a=10)break; if(1=b%3) b+=3: continue; } } cout using namespace std; int main() { int i,j,m=0,n=0; for(i=0;i<2;i+) for (j=0:j<2:j++) if(j》=i) m=1: n++: } cout<<m<<endl; cout<<n; } A. B.1 C.1 D.0 4 2 7.对于函数的传址调用的说法,不正确的是()

#include using namespace std; int main() { int a,b; for (a=1, b=1; a=10) break; if (1 == b%3) { b+=3; continue; } } cout using namespace std; int main() { int i,j,m=0,n=0; for (i=0; i=i) m=1; n++; } cout<<m<<endl; cout<<n; } A.1 B. 1 C. 1 D. 0 1 4 6 2 7. 对于函数的传址调用的说法,不正确的是()

A.是把实参的地址传递给形参,所以形参,实参共用相同的存储空间。 B.值的改变会影响实参值。 C.传址调用可传给主调函数多个值 D.既然形参与实参共用相同空间,则它们的生存期是相同的 8.下列选项中等价的是() A.inta[2][3]={1,2,3,4,5,6}与inta[2][={1,2,3,4,5,6} B.inta][3]={1,2,3,4,5,6}与inta[2][3]={1,2,3,4,5,6} C.inta[2][3]={1,2,3}与inta[][3]={1,2,3} D.inta[2][3]={1,2}与inta[2][3]={1},{2}} 9.不能把字符串“hello!”赋给数组b的语句是() A.char b[7]={h',’e',’1’,’1',’o',’!',’10'} B.char b[7]:b=”hello!” C.char b[6]=”hello!” D.char b[7]=”hello!” 10.下面程序的输出结果是() void mainO { inta[]={2,3,4,5}: cout using namespace std; void swap(double,double): int main()

A. 是把实参的地址传递给形参,所以形参,实参共用相同的存储空间。 B. 值的改变会影响实参值。 C. 传址调用可传给主调函数多个值 D. 既然形参与实参共用相同空间,则它们的生存期是相同的 8. 下列选项中等价的是() A.int a[2][3]={1,2,3,4,5,6}与 int a[2][]={1,2,3,4,5,6} B.int a[][3]={1,2,3,4,5,6}与 int a[2][3]={1,2,3,4,5,6} C.int a[2][3]={1,2,3}与 int a[][3]={1,2,3} D.int a[2][3]={1,2}与 int a[2][3]={{1},{2}} 9. 不能把字符串“hello!”赋给数组 b 的语句是() A. char b[7]={‘h’,’e’,’l’,’l’,’o’,’!’,’\0’} B. char b[7];b=”hello!” C. char b[6] =”hello!” D. char b[7]=”hello!” 10. 下面程序的输出结果是() void main() { int a[]={2,3,4,5}; cout using namespace std; void swap(double, double); int main() {

double a=3.5,b=4.8; swap(a,b); cout using namespace std; void swap(double *double *) int main() double a=3.5,b=4.8; swap(&a,&b) cout<<a<”“<b<endl; return 0; } void swap(double*aa,double*bb) double *temp,k; temp =&k; *temp=*aa:*aa=*bb;*bb=*temp; cout<*aa<”“<<bb<endl: A.4.83.5B.3.54.8C.4.83.5D.3.54.8 3.54.8 3.54.8 4.83.5 4.83.5 二、填空 1."a"和'a的区别是:前者表示 占用个字节,后者表示 占用个字节。 2重载函数通过 来区分。 3.创建对象时,系统要调用一次 函数,来为创建的对象分配内存空间,程 序中没有出现此函数的显示调用。当对象使用完毕,就要调用 函数来释放对 象所占空间

double a=3.5, b=4.8; swap(a,b); cout using namespace std; void swap(double *, double *); int main() { double a=3.5, b=4.8; swap(&a,&b); cout<<a <<”“<b<<endl; return 0; } void swap(double*aa, double*bb) { double *temp,k; temp = &k; *temp=*aa; *aa=*bb; *bb=*temp; cout<<*aa<<”“<<*bb<<endl; } A. 4.8 3.5 B. 3.5 4.8 C. 4.8 3.5 D. 3.5 4.8 3.5 4.8 3.5 4.8 4.8 3.5 4.8 3.5 二、填空 1."a"和'a' 的区别是:前者表示 ,占用 个字节,后者表示 , 占用 个字节。 2 重载函数通过 来区分。 3. 创建对象时,系统要调用一次 函数,来为创建的对象分配内存空间,程 序中没有出现此函数的显示调用。当对象使用完毕,就要调用 函数来释放对 象所占空间

3.设计类时,成员访问限定符 4.面向对象程序设计的4个特点: 5.执行语句: int result=100; cout=60)&&(result #include double pi (long n){ double s=0.0;long i; for(i=1:i=n;i+)①: ②: } void main( long x; couts; str(p,s) cout<<p;

3. 设计类时,成员访问限定符 , , 。 4.面向对象程序设计的 4 个特点: , , , 。 5.执行语句: int result=100; cout=60) && (result #include double pi (long n){ double s=0.0;long i; for (i=1;i>s; str(p,s); cout<<p;

return 0; } 8.下列程序输出结果为: #include〈iostream> using namespace std; int main() { int num=30; int &r num; r=T+100: cout<<num<<'\t'; num=num+10; cout<<r<<endl; return 0; } 9.下面程序的功能是统计一个字符串中大小字母的个数 void str_statistics(char str,int upper_num,int lower_num) int upper=0,lower=0; char p=str; int i=0; while((p)!=10'){ if(①_)lower+: if(②_)upper+; _③ } _④_ *lower_num lower: } int main() int upper=0,lower=0; char s[]="Please input a string of no more than 100 characters"; str_statistics(_⑤_); cout<<"number of upper characters ="<<upper<<endl; cout<<"number of lower characters ="<<lower<<endl:

return 0; } 8.下列程序输出结果为: #include using namespace std; int main() { int num=30; int &r = num; r=r+100; cout<<num<<’\t’; num=num+10; cout<<r<<endl; return 0; } 9.下面程序的功能是统计一个字符串中大小字母的个数 void str_statistics(char * str, int * upper_num, int * lower_num) { int upper=0,lower=0; char * p=str; int i=0; while( (*p) !='\0'){ if(__①__) lower ++; if(__②__) upper ++; __③__ } __④__ *lower_num = lower; } int main() { int upper=0,lower=0; char s[]="Please input a string of no more than 100 characters"; str_statistics(__⑤__); cout<<"number of upper characters ="<<upper<<endl; cout<<"number of lower characters ="<<lower<<endl;

return 0; 10.读程序,回答问题: #include using namespace std; void func(int num,char str[]) int i; cout>i>>str; func (i,str); } 程序编译的可执行文件是test.exe,它的目录是d:\test,则在程序编译运行期间的执 行结果是: 若运行后,在命令行窗口中输入:7 hellosjtu! 输出结果是: 11.下面程序的功能是:求a的b次方,并输出,请填空。 #include using namespace std: double func(double a,int b) { int i; double z=1;

return 0; } 10.读程序,回答问题: #include using namespace std; void func(int num, char str[]) { int i; cout>i>>str; func(i, str); } 程序编译的可执行文件是 test.exe,它的目录是 d:\test,则在程序编译运行期间的执 行结果是: 若运行后,在命令行窗口中输入: 7 hellosjtu! 输出结果是: 11. 下面程序的功能是:求 a 的 b 次方,并输出,请填空。 #include using namespace std; double func(double a, int b) { int i; double z=1;

for (int i =0;i<b;i++) ① e } void main() { double a; int b; cout<<"Please input a:" 3 cout<<endl; cout<<"please input b:"; ④ cout<<endl: cout<<⑤; } 三、编程 1.编程题:编程打印个位数是9,且能被3整除的所有三位正整数及其个数,要求一 行打印8个数据。 2.编写函数,参数为两个it型数,返回值为第一个参数除以第二个参数的结果,数据 类型为int:如果第二个参数为0,则返回值为-1。在主程序中实现输入输出。 3.设编写一程序实现 1)从键盘敲入字符,当是”!”时结束,按倒序输出到控制台屏幕: 2)将上述键盘敲入的小写英文字符变为对应的大写字符。 4.用类实现把三个同学的名字、学号、性别及五门课成绩存入档案,当输入一个合法 的学号时即能查询出该同学的情况。 5.设计一个求圆面积的基类,然后派生出一个可以计算圆柱体体积的子类。 6.利用指针和引用实现一个整数交换的函数Swap0 7.设计一个形状类Shape,分别派生出3个类Triangle,Rectangle和Circle类。分

for (int i = 0; i<b; i++) ○1 ; ○2 ; } void main() { double a; int b; cout<<"Please input a:"; ○3 ; cout<<endl; cout<<"please input b:"; ○4 ; cout<<endl; cout<<○5 ; } 三、编程 1. 编程题:编程打印个位数是 9,且能被 3 整除的所有三位正整数及其个数,要求一 行打印 8 个数据。 2.编写函数,参数为两个 int 型数,返回值为第一个参数除以第二个参数的结果,数据 类型为 int;如果第二个参数为 0,则返回值为-1。在主程序中实现输入输出。 3. 设编写一程序实现 1) 从键盘敲入字符,当是”!”时结束,按倒序输出到控制台屏幕; 2) 将上述键盘敲入的小写英文字符变为对应的大写字符。 4. 用类实现把三个同学的名字、学号、性别及五门课成绩存入档案,当输入一个合法 的学号时即能查询出该同学的情况。 5. 设计一个求圆面积的基类,然后派生出一个可以计算圆柱体体积的子类。 6. 利用指针和引用实现一个整数交换的函数 Swap() 7. 设计一个形状类 Shape,分别派生出 3 个类 Triangle,Rectangle 和 Circle 类。分

别实现求各自形状的面积

别实现求各自形状的面积

点击下载完整版文档(PDF)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
已到末页,全文结束
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有