10.若已定义 int a[9],*p=a; 并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是( ).10.若已定义int a[9],*p=a;并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是( ).(A)p+1 (B)a+1 (C
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/02 07:28:32
![10.若已定义 int a[9],*p=a; 并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是( ).10.若已定义int a[9],*p=a;并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是( ).(A)p+1 (B)a+1 (C](/uploads/image/z/1004792-32-2.jpg?t=10%EF%BC%8E%E8%8B%A5%E5%B7%B2%E5%AE%9A%E4%B9%89+int+a%5B9%5D%2C%2Ap%3Da%3B+%E5%B9%B6%E5%9C%A8%E4%BB%A5%E5%90%8E%E7%9A%84%E8%AF%AD%E5%8F%A5%E4%B8%AD%E6%9C%AA%E6%94%B9%E5%8F%98p%E7%9A%84%E5%80%BC%2C%E5%88%99%E4%B8%8D%E8%83%BD%E8%A1%A8%E7%A4%BAa%5B1%5D%E5%9C%B0%E5%9D%80%E7%9A%84%E8%A1%A8%E8%BE%BE%E5%BC%8F%E6%98%AF%28+%29.10%EF%BC%8E%E8%8B%A5%E5%B7%B2%E5%AE%9A%E4%B9%89int+a%5B9%5D%2C%2Ap%3Da%3B%E5%B9%B6%E5%9C%A8%E4%BB%A5%E5%90%8E%E7%9A%84%E8%AF%AD%E5%8F%A5%E4%B8%AD%E6%9C%AA%E6%94%B9%E5%8F%98p%E7%9A%84%E5%80%BC%2C%E5%88%99%E4%B8%8D%E8%83%BD%E8%A1%A8%E7%A4%BAa%5B1%5D%E5%9C%B0%E5%9D%80%E7%9A%84%E8%A1%A8%E8%BE%BE%E5%BC%8F%E6%98%AF%28+%29.%28A%29p%2B1+%28B%29a%2B1+%28C)
10.若已定义 int a[9],*p=a; 并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是( ).10.若已定义int a[9],*p=a;并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是( ).(A)p+1 (B)a+1 (C
10.若已定义 int a[9],*p=a; 并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是( ).
10.若已定义
int a[9],*p=a;
并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是( ).
(A)p+1 (B)a+1 (C)a++ (D)++p
11.若有下述说明和语句
int **pp,*p,a=10,b=20;
pp=&p;
p=&a;
p=&b;
printf("%d,%d\n",*p,**pp);
则输出结果是( ).
(A)10,10 (B)10,20 (C)20,10 (D)20,20
12.执行下述程序后的输出结果是( ).
#include
func(int a)
{
int b=0;
static int c=3;
a=c++,b++;
return (a);
}
main()
{
int a=2,i,k;
for (i=0;i
10.若已定义 int a[9],*p=a; 并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是( ).10.若已定义int a[9],*p=a;并在以后的语句中未改变p的值,则不能表示a[1]地址的表达式是( ).(A)p+1 (B)a+1 (C
10.c(a++为后置运算:C语言先引用变量的数值作为整个自违章罚款表达式的值,然后执行对该变量的加1运算)
11.D(p最终的值为&b,所以*pp最终的值也为&b,输出语言中.*p即为取&b地址中的数值,即b的值20,**pp同理)
12.A(如果没错的话应该是:在子函数中变量c为静态变量,即无论子函数被调用多少次,其初始值一直为3,而在子函数中a=c++,被赋值,其最终值只与c有关,与主函数中的a并无关系.再者由于后置自增运算,a的值就等于c的初始值3.其实整个主函数只是一个迷惑,并不起实质作用.)
13.这一题打字说不清楚,偶就不解释了,你不明白就问身边同学吧