《C程序设计》运算符可分为15种优先级,从高到低,优先级为1 ~ 15,除第2.13级和第14级为从右至左结合外,其它都是从左至右结合,它决定同级运算符的运算顺序。
电大中专C语言程序设计课程复习综合题(四)
(一)判断题
1、假定p所指对象的值为25,p+1所指对象的值为46,则*p++的值为46。( )
2、假定p所指对象的值为25,p+1所指对象的值为46,则*++p的值为25。( )
3、假定p所指对象的值为25,p+1所指对象的值为46,则执行*(p++)运算后,p所指对象的值为46。( )
4、假定a是一个指针数组,则a+i所指对象的地址比a地址大4*i字节。( )
5、若要把一个整型指针p转换为字符指针,则采用的强制转换表达式为(char*)p。( )
6、假定一个数据对象为int*类型,则指向该对象的指针类型仍为int*类型。( )
7、假定x为一个简单变量,则&x表示x的地址。( )
8、若p指向x,则*p与x的值不同。( )
9、NULL是一个符号常量,通常作为空指针值,它代表的值为0。( )
(二)运算题
1、
#include
int WF(int x, int y) {
x=x+y;
y=x+y;
return x+y;
}
void main() {
int x=5, y=7;
int z=WF(x,y);
printf("z=%d\n",z);
}
2、
#include
#include
void fun(char ss[]);
void main( ) {
char s[15]="0123456789";
fun(s);
printf("%s\n",s);
}
void fun(char ss[]) {
int i, n=strlen(ss) ;
for(i=0; i<n/2; i++) {
char c=ss;
ss=ss[n-1-i];
ss[n-1-i]=c;
}
}
3、
#include
int Count(int a[], int n, int x)
{
int i,c=0;
for(i=0;i<n;i++) if(a>x) c++;
return c;
}
void main() {
int a[8]={20,15,32,47,24,36,28,70};
int b=Count(a,8,30);
printf("b=%d\n",b);
}
#include
void main() {
int a[8]={3,5,7,9,2,3,4,8};
int s=0,*p;
for(p=a;p<a+8;) s+=*p++;
printf("s=%d\n",s);
}
4、
#include
int LA(int *a, int n, int x) {
int i,s=0;
for(i=0;i<n;i++)
if(a<x) s+=a;
return s;
}
void main() {
int a[8]={5,10,15,8,12,3,9,20};
int b=LA(a,5,10);
int c=LA(a+2,6,10);
printf("%d %d\n",b,c);
}