四川大学期末考试试题(A卷).doc
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四川大学期末考试试题(A卷)
(2013——2014 学年第一学期)
课程号:303066030课序号:课程名称:计算机基础及C程序设计语言任课教师:刘亚梅刘洋任瑞玲曾晓东余勤罗伟王茂宁王忠邓丽华成绩:
本题8 页,本页为第 2 页
while ((ch=getchar( ))!= '&')switch (ch)
{
case 'o':
case 'n':
default: v1++;
case '&': v2++;
}
printf("%d,%d\n",v1,v2);
}
A)2,1 B)6,0 C)6,6 D)2,7
20.若有定义:char a[10], *p=a; 则不能
..给数组a输入字符串的语句是。
A)gets(a) B)gets(a[0]) C)gets(&a[0]); D)gets(p);
21.有两个字符数组str1、str2,则下面能正确对str1、str2进行输入的语句是。
A)gets(str1, str2); B)scanf(“%s%s”, str1, str2);
C)scanf(“%s%s”, &str1, &str2); D)gets(“str1”);gets(“str2”);
22.下面能正确进行字符串赋值操作的是。
A)char s[5]={"abcde"} B)char s[5]={' a','b','c','d','e'}
C)char *s; s= "abcde" D)char *s; scanf("%s",s);
23.设有数组定义: char a[ ]="ABCDE\0123"; 则数组a所占的空间为个字节。
A)9 B)10 C)5 D)8
24.有以下程序
#include
#include
void main()
{
char s1[ ]={'a', 'b', 'c'}, s2[10]={'a', 'b', 'c'};
printf("%d %d\n", strlen(p), strlen(q));
}
以下叙述中正确的是______。
A)在给s1和s2数组置初值时,系统会自动添加字符串结束符,故长度都为3
B)由于s1数组中没有字符串结束符,长度不能确定;但s2数组中字符串长度为3
C)由于s1和s2数组中都没有字符串结束符,故长度都不能确定
D)以上说法都不对
25.若有定义:int a=0, *p=&a;,则语句printf("%d\n",*p);的输出结果是______。
A)随机值B)0 C)a的地址D)p的地址
26.下面程序段,输出*的个数是
char *s="\tx++\016yz";
for (;*s!='\0';s++) printf("*");
A)4 B)9 C)7 D)11
27.若有以下说明,且0≤i≤10,则对数组元素的错误引用是_______。
int a[ ]={1,2,3,4,5,6,7,8,9,10}, *p = a, i;
A)p[i] B)a[p-a+i] C)p+i D)*(&a[i])
本题8 页,本页为第 3 页
28.若有以下说明,且0≤i<10,以下表达式中错误
..的是_______。
int a[ ]={1,2,3,4,5,6,7,8,9,10}, *p = a, i;
A)p[i++] B)*(a+i) C)*(i+a) D)*((a++)+i)
29.以下程序程序运行后的输出结果是______。
#include
void main()
{
int a[]={2,4,6,8,10}, y=0, x, *p;
p=&a[1];
for(x= 1; x<3; x++)
y += p[x];
printf("%d\n",y);
}
A)10 B)11 C)14 D)15
30.以下程序运行后的输出结果是______。
#include
void main()
{
char s[]="158",*p;
p=s;
printf("%c",*p++);
printf("%s",p);
}
A)158 B)1258 C)58 D)269
二、判断对错,对的划“√”,错的划“×”(每小题1分,共10分,)
1.C语言中,每个函数都可以单独编译、单独执行。()
2.可以对字符型数组进行整体输入、输出。()
3.以下两种初始化是等价的。()
char x[ ]="abcdefg";
char x[ ]={'a', 'b', 'c', 'd', 'e', 'f', 'g'};
4.当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息。
()
5.数组的元素实质上就是一个变量,代表内存中的一个存储单元。()
6.设有以下程序段:
char r=’A’,*p=&r;
*p=r;
则“char r=’A’,*p=&r;”是把r的地址赋值给了p所指的存储单元.( )
7.设有程序段,则s数组长度和p所指向的字符串长度相等。()
char s[ ]=“china”;char *p;p=s;
本题8 页,本页为第 4 页