交大程序设计C第三次作业.docx
《交大程序设计C第三次作业.docx》由会员分享,可在线阅读,更多相关《交大程序设计C第三次作业.docx(8页珍藏版)》请在冰豆网上搜索。
交大程序设计C第三次作业
题目1
一个变量的指针就是()
选择一项:
A.变量的地址
B.变量的类型
C.变量的名称
D.变量的值
题目2
已有定义chara[]="xyz",b[]={'x','y','z'},以下叙述正确的是()
选择一项:
a.上述说法均不正确
b.数组a的存储空间长度大于数组b的存储空间长度
c.数组a和b的存储空间长度相同
d.数组a的存储空间长度小于数组b的存储空间长度
题目3
在C语言中,对变量的访问方式是()
选择一项:
A.直接、间接均不能
B.不能直接访问,能间接访问
C.能直接访问,也能间接访问
D.能直接访问,不能间接访问
题目4
两个指针变量不能()
选择一项:
A.相减
B.比较
C.指向同一地址
D.相加
题目5
以下能正确定义一维数组的选项是()
选择一项:
A.#defineN100intnum[N];
B.intN=100;intnum[N];
C.intnum[0..100];
D.intnum[];
题目6
下列说法中不正确的是()
选择一项:
A.函数可以没有形参,但函数名后的括号不能省略
B.C语言规定,不能在一个函数的内部再定义函数
C.函数的类型可以是整型、实型、字符型,但不能是指针类型
D.在没有声明函数返回值类型的情况下,默认函数返回值类型为int型
题目7
给定下列程序,则运行结果为()
#include
voidfun(intx,inty,int*z)
{*z=x–y;
}
voidmain()
{inta,b,c;
fun(11,5,&a);
fun(8,a,&b);
fun(a,b,&c);
printf(“%d,%d,%d\n”,a,b,c);
}
选择一项:
A.2,4,6
B.6,2,4
C.2,6,4
D.6,4,2
题目8
以下不能正确定义二维数组的选项是()
选择一项:
A.inta[][2]={1,2,3,4};
B.inta[2][2]={{1},2,3};
C.inta[2][]={{1,2},{3,4}};
D.inta[2][2]={{1},{2}};
题目9
下列说法中错误的是()
选择一项:
A.在一个函数的复合语句中定义的变量只在本函数范围内有效
B.在不同的函数中可以使用相同名字的变量
C.在一个函数内定义的变量只在本函数范围内有效
D.函数中的形参是局部变量
题目10
阅读下列程序段,其执行结果为()
#include
voidfun(inta)
{intx=5;
x+=a++;
printf("%d,",x);
}
voidmain()
{inta=3,x=1;
fun(a);
x+=a++;
printf("%d\n",x);
}
选择一项:
A.8,5
B.8,3
C.8,4
D.8,2
题目11
下列叙述中错误的是()
选择一项:
a.数组名代表数组所占存储区的首地址,其值不可变
b.可以通过赋初值的方式确定数组元素个数
c.在程序执行过程中,当数组元素下标超出定义的下标范围时,系统将给出“下标”越界的错误提示
d.对于double类型数组,不可直接用数组名对数组进行整体输入或输出
题目12
下列程序的输出结果是()
#include
voidmain()
{chara[]={'a','b','c','d','e','f','g','h','\0'};
inti,j;
i=sizeof(a);
j=strlen(a);
printf("%d,%d\n",i,j);
}
选择一项:
A.1,8
B.9,9
C.8,9
D.9,8
题目13
C语言规定,若未对函数返回类型加以说明,则函数的隐含类型为()
选择一项:
A.char
B.double
C.void
D.int
题目14
下列说法中正确的是()
选择一项:
A.定义函数时,形参的类型说明可以放在函数体内
B.如果形参与实参的类型不一致,则以实参类型为准
C.如果函数值类型与return后的返回值类型不一致,则以函数值类型为准
D.return后面的值不能为表达式
题目15
给定下列程序,假定从键盘输入数据1、2,则执行结果为()
#include
voidswap(int*p1,intp2)
{*p1=*p1+p2;
p2=p2+*p1;
}
voidmain()
{inta,b,*p1;
scanf("%d,%d",&a,&b);
p1=&a;
swap(p1,b);
printf("a=%d,b=%d\n",a,b);
}
选择一项:
A.3,5
B.3,2
C.a=3,b=5
D.a=3,b=2
题目16
阅读下列程序段,其执行结果为()
#include
voidmain()
{inta=4,b=6,c=7;
doubled;
doublefun(int,int,int);
printf("d=%lf\n",fun(a,b,c));
}
doublefun(inta,intb,intc)
{returna%b*c;
}
选择一项:
A.27.000000
B.27
C.28.000000
D.28
题目17
C语句int*func();中,func表示的是()
选择一项:
A.返回值为指针的函数名称
B.指向整型变量的指针
C.指向数组的指针
D.指向函数的指针
题目18
若已定义的函数有返回值,则以下关于该函数调用的叙述错误的是()
选择一项:
A.函数调用可以作为一个函数的实参
B.函数调用可以出现在表达式中
C.函数调用可以作为独立语句存在
D.函数调用可以作为左值而被赋值
题目19
C语句:
int(*pa)[5];中,pa表示的是一个()
选择一项:
A.指针数组的名称
B.指向整型变量的指针
C.指向包含5个整型元素的一维数组的指针
D.指向函数的指针
题目20
给定下列程序,则其运行结果为()
#include
voidmain()
{staticintarray[][4]={{1,3,5,7},{9,11,13,15},{17,19,21,23}};
int(*p)[4],i,j,sum[3];
p=array;
for(i=0;i<3;i++)
{sum[i]=0;
for(j=0;j<4;j++)
sum[i]+=*(*(p+i)+j);
printf("%d,",sum[i]);
}
}
选择一项:
A.144
B.16,48,80
C.164880
D.80
ABCDACBCACCDCCDCADCB