c语言程序设计练习题!!10道
11.若有定义:intx[10];则以下表达式中,不能表示元素x[1]的地址的是()。A.x+1B.x++C.&x[0]+1D.&x[1]12.下面程序的输出结果是()。...
11. 若有定义: int x[10];则以下表达式中,不能表示元素x[1]的地址的是( )。
A. x+1
B. x++
C. &x[0]+1
D. &x[1]
12. 下面程序的输出结果是( )。
A. 1 4 7
B. 3 5 7
C. 3 6 9
D. 1 5 9
main( )
{ int a[3][3]={ 1,2,3,4,5,6,7,8,9} , i;
for(i=0 ;i<3; i++) printf(“%d ”,a[i][2-i]);}
13. 数字字符0的ASCII值为48,若有以下程序
main()
{ char a=‘1’,b=‘2’;
printf("%c,",b++);
printf("%d\n",b-a);
}
程序运行后的输出结果是( )。
A. 3,2
B. 50,2
C. 2,2
D. 2,50
14. 以下程序,程序运行后的输出结果是( )。
main()
{ char s[]="789",*p;
p=s;
printf("%c",*p++);printf("%c",*p++);
}
A. 78
B. 89
C. 77
D. 88
15. 以下程序的输出结果是( )。
#include <string.h>
main( )
{ char *p1,*p2,str[50]="ABCDEFG";
p1="abcd"; p2="efgh";
strcpy(str+1,p2+1); strcpy(str+3,p1+3);
printf("%s",str); }
A. AfghdEFG
B. Abfhd
C. Afghd
D. Afgd
16. 以下对二维数组定义不正确的选项是( )。
A. int a[2][3]={0};
B. int b[][3]={0,1,2,3};
C. int c[2][3]={1,2,3,4,5,6};
D. int d[3][]={{1,2},{1,2,3},{1,2,3,4}};
17. 以下正确的初始化语句是( )。
A. int b[2][3]={ {1,2,3},{1,2,3},{1,2} };
B. int b[3][ ]={ {1},{2},{3} };
C. int b[2][ ]={1,2,3,4,5,6}
D. int b[ ][3]={ {1,1},{2,2},{3} };
18. 有如下程序, 该程序的输出的结果是( )。
int func(int a,int b)
{ return (a+b);}
main 0
{ int x=2,y=5,z=8,r;
r=func(func(x,y),z);
printf(“%\d\n”,r); }
A. 12
B. 13
C. 14
D. 15
19. 若有以下说明和定义,则不正确的表达式是( )。
struct abc
{ int a[5];
struct abc *p;
} a, *d;
A. a.a[1] = 0
B. (*d).p = &a
C. abc.p = &a
D. d->a[0] = 1
20. 有如下定义, 能输出字母M的语句是( )。
struct person{char name[9]; int age;};
struct person class[10]={“Johu”,17,“Paul”, 19,“Mary”, 18,“Adam”, 16};
A. prinft(“%c\n”,class[3].name);
B. pfintf(“%c\n”,class[3].name[1]);
C. prinft(“%c\n”,class[2].name[1]);
D. printf(“%^c\n”,class[2].name[0]); 展开
A. x+1
B. x++
C. &x[0]+1
D. &x[1]
12. 下面程序的输出结果是( )。
A. 1 4 7
B. 3 5 7
C. 3 6 9
D. 1 5 9
main( )
{ int a[3][3]={ 1,2,3,4,5,6,7,8,9} , i;
for(i=0 ;i<3; i++) printf(“%d ”,a[i][2-i]);}
13. 数字字符0的ASCII值为48,若有以下程序
main()
{ char a=‘1’,b=‘2’;
printf("%c,",b++);
printf("%d\n",b-a);
}
程序运行后的输出结果是( )。
A. 3,2
B. 50,2
C. 2,2
D. 2,50
14. 以下程序,程序运行后的输出结果是( )。
main()
{ char s[]="789",*p;
p=s;
printf("%c",*p++);printf("%c",*p++);
}
A. 78
B. 89
C. 77
D. 88
15. 以下程序的输出结果是( )。
#include <string.h>
main( )
{ char *p1,*p2,str[50]="ABCDEFG";
p1="abcd"; p2="efgh";
strcpy(str+1,p2+1); strcpy(str+3,p1+3);
printf("%s",str); }
A. AfghdEFG
B. Abfhd
C. Afghd
D. Afgd
16. 以下对二维数组定义不正确的选项是( )。
A. int a[2][3]={0};
B. int b[][3]={0,1,2,3};
C. int c[2][3]={1,2,3,4,5,6};
D. int d[3][]={{1,2},{1,2,3},{1,2,3,4}};
17. 以下正确的初始化语句是( )。
A. int b[2][3]={ {1,2,3},{1,2,3},{1,2} };
B. int b[3][ ]={ {1},{2},{3} };
C. int b[2][ ]={1,2,3,4,5,6}
D. int b[ ][3]={ {1,1},{2,2},{3} };
18. 有如下程序, 该程序的输出的结果是( )。
int func(int a,int b)
{ return (a+b);}
main 0
{ int x=2,y=5,z=8,r;
r=func(func(x,y),z);
printf(“%\d\n”,r); }
A. 12
B. 13
C. 14
D. 15
19. 若有以下说明和定义,则不正确的表达式是( )。
struct abc
{ int a[5];
struct abc *p;
} a, *d;
A. a.a[1] = 0
B. (*d).p = &a
C. abc.p = &a
D. d->a[0] = 1
20. 有如下定义, 能输出字母M的语句是( )。
struct person{char name[9]; int age;};
struct person class[10]={“Johu”,17,“Paul”, 19,“Mary”, 18,“Adam”, 16};
A. prinft(“%c\n”,class[3].name);
B. pfintf(“%c\n”,class[3].name[1]);
C. prinft(“%c\n”,class[2].name[1]);
D. printf(“%^c\n”,class[2].name[0]); 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询