作业1:C++语法基础练习

2020-02-21 13:00

作业1:C++语法基础练习

一、选择题

1、下列数据中,不合法的实型数据的是( )。

(A) 0.123 (B) 123e3 (C) 2.1e3.5 (D) 789.0 2、设变量a是int型,f是float型,i是double型,则表达式10+’a’+i*f值的数据类型为( )。 (A) int (B) float (C) double (D)不确定

3、若变量已正确定义并赋值,以下符合C语言语法的表达式是( )。 (A)a:= b+1 (B)a=b=c+2 (C) int 18.5%3 (D)a=a+7=c+b 4、下列可用于C/C++语言用户标识符的一组是( )。 (A) void, define, WORD (B) a3_b3,_123,Car (C) For, -abc, IF Case (D) 2a, DO, sizeof

5、若k为整型,以下while循环体中的语句执行( )。

k=2;

while(k=0) {

printf(\ k--;printf(\ }

(A)无限次 (B)0次 (C)1次 (D)2次 6、对于下面的程序段 int t=0; while (t=l) {...}

以下叙述正确的是( )。

(A)循环控制表达式的值为0 (B)循环控制表达式的值为1 (C)循环控制表达式不合法 (D)以上说法都不对 7、 以下函数调用语句中的实参个数为( )。 excc((vl,v2),(v3,v4,v5),v6);

(A)3 (B)4 (C)5 (D)6

8、 若有以下调用语句,则不正确的fun()函数的首部是( )。

void main( ) { …

int a[50],n; …

fun(n,&a[9]); … }

(A) void fun(int m,int x[]) (B) void fun(int s, int h[41]) (C) void fun(int p,int *s) (D) void fun(int n, int a) 9、若有下面的程序段(本题学完指针再做): char s[]=\ 则下列叙述正确的是( )。

1

(A)s和p完全相同

(B)数组s中的内容和指针变量p中的内容相等 (C)s数组长度和p所指向的字符串长度相等 (D)*p与s[0]相等

10、下面为不正确的字符串赋值或赋初值方式是( )。

(A) char*str;str=\

(B) char str[7]={'s','t','r','i','n','g'}; (C) char str1[10];str1=\

(D) char strl[]=\11、若有以下的说明,则对字符串中字符正确引用的是( )。(多项选择) 其中0≤i<6。

char *strp=\

(A) *strp (B)*(strp+i) (C) strp[i] (D) strp

12、若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是( )。

(A) a,point,*&a (B)&*a,&a,*point

(C) *&point,*point,&a (D) &a,&*point,point 13、下列引用的定义中,______是错误的。

A int i; int &j=i; B int i; int &j; j=i; C float i; float &j=i; D char d; char &k=d;

二、读程序分析程序的运行结果

1、两次运行以下程序,如果从键盘上分别输入6和4,则输出的结果是( )。 int main( ) {

int a; cin>>a;

if(a++>5)cout<

(A)7和5 (B)6和3 (C)7和4 (D)6和4 2、以下程序的输出为( )。 #include void main( ) {

int i,j,x=0;

for(i=0;i<2;i++) {

x++;

for(j=0;j<=3;j++) {

if(j%2) continue; x++;

2

} x++; }

printf(\ }

(A)x=4 (B)x=8 (C) x=6 (D) x=12

3、 以下程序中函数sort的功能是对a数组中的数据进行由大到小的排序,程序运行后的输出结果是( )。

void sort(int a[],int n) {

int i,j,t;

for(i=0;i

for(j=i+1;j {t=a[i];a[i]=a[j];a[j]=t;} }

int main() {

int a[10]={1,2,3,4,5,6,7,8,9,10},i; sort(&a[3],5);

for(i=0;i<10;i++) printf(\ printf(\}

(A)1,2,3,4,5,6,7,8,9,10 (B)10,9,8,7,6,5,4,3,2,1 (C)1,2,3,8,7,6,5,4,9,10 (D)8,7,6,5,4,3,2,1,9,10

4、 以下程序的输出结果为( )。

char *alpha[6]={ \char **p; int main( ) {

int i; p=alpha;

for(i=0;i<4;i++)printf(\ printf(\}

(A) AEIM (B) BFJN (C) ABCD (D) DHLP 5、下列程序的输出结果是( )。

int main() {

int a[3][4]={ 1,3,5,7,9, 11,13,15,17,19,21,23}; int(*p)[4]=a,i,j,k=0; for(i=0;i<3;i++)

3

for(j=0;j<2;j++) k=k+*(*(p+i)+j); printf(\}

6、下面程序运行结果是 。

struct s {

int x,y;

}data[2]={10,100,20,200};

int main() { s *p; p=data;

cout<<++(p->x); }

(A) 10 (B) 11 (C) 20 (D) 21 7、下面程序运行结果是 。

void fun(int &a,int &b) {

int p; p=a; a=b; b=p; }

void exchang(int &a, int &b, int &c) {

if(a

int main() {

int a,b,c;

a= 12; b=639; c=78; exchang(a,b,c);

cout<<\}

(A) a=639,b=78,c=12 (B) a=12,b=639,c=78 (C) a=639,b=12,c=78 (D) a=78,b=12,c=639

三、填空题

1、下面程序用0~9之间不同的3个数构成一个3位数,统计出共有多少种方法。请 填空。

4

#include \ void main() {

int i,j,k,count=0; for(i=1;i<=9;i++) for(j=0;j<=9;j++)

if( (1) )continue; else

for(k=0;k<=9;k++) if( (2) )count++; printf(\ }

2、 下面程序能将Hello!反向打印出来,请填空。

void print_hello (char *string) {

char *str= ( 1) ; if (*str== (2) ) return; while(*str) str++;

(3) ; printf(\

(4) NULL; print_hello ( (5) ); }

int main() {

char str[]=\ print_hello(str); }

3、下列程序的运行结果是( )。

int func(int a,int b) {

static int m=0,i=2; i+=m+1; m=i+a+b; return(m); }

int main() {

int k=4,m=3,p; p=func(k,m); printf(\ p=func(k,m); printf(\

5


作业1:C++语法基础练习.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:生产企业出口退税申报系统2.1版操作指南 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: