同济 c++程序设计 软件基础 答案 PPT 网上模拟题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网上模拟题
一.选择题
1.下面符合C/C++语言语法的表达式是()
A. (a+b)++
B. b!=0
C. 5++
D. a+7=c+b
B
2. C/C++语言中运算对象必须是整型的运算符是()
A. %
B. /
C. >=
D. !=
A
3. 假设有定义char ch;下列输出字符的方法不正确的是________。
A. cout.put(ch);
B. cout<<put(ch);
C. cout<<ch;
D.cout.put(ch).put(ch);
B
4. 若有定义int a=3,&b=a;则执行语句b=5后a和b的值为()。
A. a=3,b=5
B. a=5,b=5
C. a=3,b=3
D. a=5,b=3
B
5.有说明:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a+1; 则*(p+2)的值为()。
A. 3
B. 4
C. 5
D. 6
B
6.以下不是C/C++语言合法的用户定义标识符的是()。
A.class
B. p_q
C. M12
D. max
A
7. 有定义:char c[20];若要使c中的值为"li ming",应用()语句。
A. cin>>c;
B. c="li ming";
C. gets(c);
D. getchar(c);
C
8. 判断整型变量x能被4整除,但不能被5整除的逻辑表达式为()。
A. x%4=0&&x%5<>0
B. x%4=0||x%5<>0
C. x%4==0&&x%5!=0
D. x%4==0||x%5!=0
C
9. 已知有如下的结构定义,则对结构成员c的正确引用是()。
struct abc
{ int i;
char s[10];
float c;
}*stu;
A. *stu.c
B. (*stu)->c
C. stu.c
D. stu->c
D
10.以下定义语句中,错误的是()
A. int p[]={1,2,3};
B.int a[][2]={1,2,3,4,5,6};
C. int a[10]={1,2};
D.int a[n=10]; D
11.有如下函数定义:
void func(int x,int y ,int *z)
{*z=x+y;}
若要将变量a、b之和存入c中(均为整型),则调用语句应为___________。
A. func(a,b,&c);
B. c=func(a,b);
C.*c=func(a,b,c) ;
D. func(a,b,*c);
A
12. 以下不能带参数的函数是()
A. 成员函数
B.非成员函数
C. 析构函数
D. 构造函数
C
13.下面函数说明正确的是_________。
A. void f (int x=3, int y, int z);
B. void f(int x, int y=3, int z);
C. void f (int x, int y, int z=3);
D. void f (iny x=1, int y, int z=3);
C
14. 以下程序段中循环执行的次数是_______。
int k=0; for(;k=1;) k++;
A.无限次
B.有语法错,不能执行
C. 1次
D. 0 次
A
15. 要设置数据输出的宽度可以使用__________。
A. setw
B. setbase
C. setfill
D.setprecision
A
16.已知ch是字符型变量,以下错误的赋值表达式为()。
A.ch='ab'
B.ch='a' +2
C. ch='1'+3
D.ch=65
17.已知float a[10],*p=a,*q=&&a[2];假设数组的首地址为1000H,则表达式q-p的值为()。
A. 2
B. 4
C. 8
D. 出错
18.判断字符串a和b是否相等的正确表达为( )
A.if(a=b)
B.if(a==b)
C. ch='1'+3
D.ch=65
19.通过cin>>a>>b;要使a值为3,b值为4,则正确的数据输入形式为()。
A.34(回车)
B.a=3,b=4(回车)
C. a=3(回车)b=4(回车)
D.3(回车)4(回车)
20.以下语句错误的是()。
A.int i=10,&&j=i;
B.int a[10]={0};
C.char s[ ]="test";
D.int a=b=c=0;
二.填空题
1.若有定义char s[20]="abcde",则调用函数strlen(s)的结果为_________。
5
2. 缺省的函数类型指的是___________类型。
整型@int
3. 有定义:int n=5,则表达式1/2*(n+10)的值为___________。
4.
以下程序的输出结果是___________。
int x=5;
void cube()
{x=1;}
void main()
{cube();
cout<<x;
}
1
5. 在磁盘文件操作中,打开文件以便输入的文件打开方式是________。
ios::in
6.
下面程序的输出结果是__________
int f1(int x)
{static int y=1;
y+=x;
return y;
}
void main()
{f1(2);
cout<<f1(3);
}
6
7.
以下程序段的输出结果是__________。
char a='B';
switch(a)
{case 'A': cout<<a;
case 'B': cout<<a+1;
case 'C': cout<<a+2;
}
CD
8. 在类定义中,类的数据成员的访问权限一般为__________。
private @私有
9 .设有定义:CString s1="abcdefg";要将s1的值赋给s2,应用语句__________。
s2=s1;
10.假设有定义char *s="abcdefg";则执行语句cout<<s+4;的结果为_________。
efg
三.程序填充
以下程序输出1~1000之间的完全数。
完全数是指这样的数,该数恰好等于它的因子之和(除自身这个因子之外)。
如6的除自身之外的因子有1、2、3,而6=1+2+3,故6为完全数。
#include "iostream.h"
void main()
{
int n,s,m;
for(n=1;n<=1000;n++)
{
_______(1)_______;
for(m=1;m<n;m++)
if(________(2)________)
s=s+m;
if(_____(3)_______)
cout<<n<<'\t';
}
}
(1) s = 0 (2) n % m = = 0 (3) s = = n
2.
以下程序的功能是通过函数调用将10个数的值用其绝对值取代。
#include "iostream.h"
______(1)________
void main()
{
_______(2)_______;
int n,x;
for(n=0;n<10;n++)
{
cin>>x;
________(3)_______;
cout<<x<<endl;
}
}
void fun(int *d)
{*d=fabs(*d);}
(1) #include "math.h"
(2) void fun (int *d)&& void fun (int *)
(3) fun (&x)
3.
以下程序定义了一个日期类,具有设置日期、判断闰年、输出日期等功能。
程序对2000年8月23日进行测试。
#include <iostream.h>
class Tdate
{_____(1)______:
int year,month,day;
public:
void setdate(int y,int m,int d)
{year=y; month=m; day=d;}
int isleapyear()//要求为闰年时函数的返回值为1,否则为0
{if(year%400==0||(year%4==0&&year%100!=0))
return 1;
else return 0;}
void print();
};
__________(2)__________
{cout<<year<<"."<<month<<"."<<day<<endl;}
void main()
{Tdate *date1;
__________(3)________;
date1->setdate(2000,8,23);
date1->print();
if(__________(4)__________)
cout<<"leap year."<<endl;
else
cout<<"not leap year."<<endl;
}
1.private
2.void Tdate ::print()
3.date1=new Tdate;
4.date1-> isleapyear()
四.编程题
1. 编程将字符串s1和s2中对应位置上字符较大者,存放在字符数组s3的对应位置上,若s1和s2长度不同,长出的内容原封不动地复制到s3中。
如,假设:
s1为:”abcd”
s2为:”badcfA”则:
s3为:”bbddfA”
要求在C:\ vcks1下建立一个ct11的工程,在该工程下建立一个ct11.cpp的文件,当程序调试完成之后,要将ct11.cpp文件复制到A盘上。
2. 编一函数int f(int n),功能为判断一个整数n是否为回文数(回文是指正读、倒读都一样的数,如121,2332都是回文数),若是,函数的返回值为1,否则为0。
在主函数中统计并输出四位正整数中回文数的个数。
要求在C:\ 下建立一个test2的工程,在该工程下建立一个test2.cpp的文件,当程序调试完成之后,要将test2.cpp文件复制到A盘上。