1011下珠江学院C语言期末.docx
- 文档编号:13950579
- 上传时间:2023-06-19
- 格式:DOCX
- 页数:13
- 大小:20.96KB
1011下珠江学院C语言期末.docx
《1011下珠江学院C语言期末.docx》由会员分享,可在线阅读,更多相关《1011下珠江学院C语言期末.docx(13页珍藏版)》请在冰点文库上搜索。
1011下珠江学院C语言期末
华南农业大学珠江学院期末考试试卷
2010--2011学年度下学期 考试科目:
C语言
考试年级:
__2010__级考试类型:
(闭卷)A卷考试时间:
120分钟
学号姓名年级专业
题号
一
二
三
四
五
六
总分
得分
得分
评卷人
一、单项选择题(本大题共15小题,每小题1分,共15分)
在每小题列出的四个备选项中只有一个是最符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.以下C语言用户标识符中,不合法的是【】。
A._a1B.delC.doublesD.double
2.下列运算符中优先级最高的运算符是【】。
A、&&B、%C、==D、!
3.在C语言中运算对象必须是整型的运算符是【】。
A./B.%C.==D.<=
4.表达式【】的值是整数类型。
A.15/2B.15/2+2.0
C.25/5.0D.0.5*10
5.有定义语句:
intx,y;若要通过scanf(“%d,%d”,&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,正确的是【】。
A.1112<回车>B.11,12
C.1112<回车>D.11<回车>12<回车>
6.若有定义:
intx,*pb;则以下正确的赋值表达是【】。
A .pb=&xB.pb=xC.*pb=&xD.*pb=*x
7.有以下函数定义:
voidfun(intn,doublex){……}
若以下选项中的变量都已正确定义并赋值,则在主函数中,对函数fun的正确调用语句是【】。
A.fun(inty,doublem);B.k=fun(10,12.5);
C.fun(10,12.5);D.voidfun(n,x);
8.已定义c为字符型变量,则下列语句中正确的是【】。
A.c=’97’;B.c=”97”;
C.c=97;D.c=”a”;
9.以下程序的输出结果是【】。
main()
{chars1[20]=“China”,s2[20]=“for”,s[10];
if(strcmp(s1,s2)!
=0)printf(“%s\n”,strcat(s2,s1));
elseprintf(“%d\n”,strlen(s1));
}
AChinaforB5CforChinaD3
10.以下程序的输出结果是【】。
A、因输出格式不合法,无正确输出 B、65,97
C、D,aD、68,97
main(){charc1=’D’,c2=’a’;printf(“%d,%d”,c1,c2);}
11.已知职工记录描述如下,设变量w中的“生日”是“1993年10月25日”,下列对“生日”的正确赋值方式是【】。
structbirth
{intday;
intmonth;
intyear;
};
structworker
{intno;charname[20];charsex;
structbirtha;
};
structworkerw;
Aday=25;month=10;year=1993;
Bw.birth.day=25;w.birth.month=10;w.birth.year=1993;
Cw.day=25;w.month=10;w.year=1993;
Dw.a.day=25;w.a.month=10;w.a.year=1993;
12.以下程序的输出结果是【】。
A、3B、5C、7D、9
main()
{inta[4]={3,5,7,9};printf(“%d”,a[2]);}
13.设有如下程序段,下面描述中正确的是【】。
intk=10;
while(k==0)k=k-1;
A.循环执行十次B.循环是无限循环
C.循环体语句一次也不执行D.循环体语句执行一次
14.以下程序的输出结果是【】。
A、11B、8C、15D、31
func(inta,intb)
{intc;
c=a*b;
returnc;}
main()
{intx=3,y=5,z;
z=func(x,y);
printf(“%d”,z);}
15.数组名作为实参数传递给函数时,数组名被处理为【】。
A该数组的长度B该数组的元素个数
C该数组的首地址D该数组中各元素的值
得分
评卷人
二、填空题(本大题共10小题,每小题2分,共20分)
1.下面程序运行后的输出结果是。
main()
{intp=30;
printf(“%d\n”,(p/3>0?
p/10:
p%3));
}
2.若inta[2][2]={{1},{2,3}};则a[1][0]的值是。
3.有以下程序
main()
{ints=0,a=1,n;
scanf("%d",&n);
do
{s+=1;a-=2;
}while(a!
=n);
printf(“%d\n”,s);
}
若要使程序的输出值为2,则应该从键盘输入的n的值是。
4.执行以下程序后,输出‘*’号的个数是。
main()
{inti,j;
for(i=1;i<4;i++)
for(j=1;j<=i;j++)
putchar(‘*’);
}
5.设x=5,y=5,z=5。
则表达式x&&y&&z-2的值为:
。
6.表达式“0<=a<=10”在C语言中应表示为:
。
7.在C语言中,若对函数类型未加显式说明,则默认为类型。
8.若有定义:
inta=11,b=12;执行语句:
c=(a-=(b-7));变量c的值为。
9.下面程序运行后的输出结果是。
main()
{inta[5]={1,2,3,4,5},*p=&a[4];
for(;p>=a;p--)
printf(“%d,”,*p);
}
10.用for循环打印012301230123
for(i=1;i<=12;i++)printf(“%2d”,);
得分
评卷人
三、判断题(本大题共10小题,每小题1分,共10分)
1.C语言中,大写字母和小写字母意义相同。
【】
2.函数strlen("ABSDFG\n")的值是7。
【】
3.通过return语句,函数可以带回一个或一个以上的返回值。
【】
4.数组元素的类型可以是整型、实型、字符型或三者混合。
【】
5.不同类型的变量可以出现在同一个表达式中。
【】
6.对整型变量可进行自加或自减运算,而对常量或表达式不可以。
。
【】
7.在int*p;和语句printf(“%d”,*p);中的*p含义相同。
【】
8.函数声明与函数调用时的参数名称可以不一致。
【】
9.数组名和指针均可以进行++和――运算。
【】
10.C程序必须经过编译、链接才能运行。
【】
得分
评卷人
四.读程序写结果(本大题共5小题,每小题3分,共15分)
1.下列程序的运行结果为。
floataverage(floatarray[5])
{inti;
floataver,s=0;
for(i=0;i<5;i++)
s=s+array[i];
aver=s/5;
return(aver);
}
voidmain()
{floatscore[5]={80,70,60,80,60},aver;
aver=average(score);
printf(“averagescoreis%f\n”,aver);
}
2.下列程序运行后的输出结果是。
voidfun(int*c,intd)
{*c=*c+1;d=d+1;
}
voidmain()
{intb=10,a=5;
fun(&b,a);printf("%d,%d\n",b,a);
}
3.若从键盘输入12345,以下程序运行后的输出结果是。
voidfun(intn)
{if(n!
=0)
{printf("%d",n%10);
fun(n/10);
}
}
voidmain()
{intn;
scanf(“%d”,&n);
fun(n);
}
4.以下程序的执行结果是。
main()
{inta[]={1,2,3,4,5,6},*p;
p=a;
printf("%d,%d\n",*p,*(p+3));
}
5.若从键盘输入“abcde<回车>”,则输出结果是。
voidmain()
{inta[3][3]={{9,7,5},{3,1,2},{4,6,8}};
inti,j,s1=0,s2-0 ;
for(i=0 ;i<3 ;i++)
for(j=0 ;j<3 ;j++)
{if(i==j)
s1=s1+a[i][j] ;
if(i+j==2)
s2=s2+a[i][j] ;
}
printf("%d,%d\n",s1,s2);
}
得分
评卷人
五.程序填空(本大题共9空,每空2分,共18分)
1.以下程序的功能是调用函数fun计算前10项之和:
m=1-2+3-4+……+9-10,并输出结果,请填空。
intfun(intn)
{intm=0,f=1,i;
for(i=1;i<=n;i++)
{m+=i*f;
f=1;
}
returnm;
}
voidmain()
{ints;
s=2;
printf(“m=%d\n”,s);
}
2.有一个3*4矩阵,求其中的最大元素。
intfun(intarray[3][4])
{inti,j,max;
max=3;
for(i=0;i<3;i++)
for(j=0;j<4;j++)
if(array[i][j]>max)
4;
5;
}
voidmain()
{inta[3][4],i,j,m;
for(i=0;i<3;i++)
for(j=0;j<4;j++)
m=6;
printf(“maxvalueis%d\n”,m);
}
3.在主函数中输入n个字符串,用sort函数对其从小到大排序。
voidmain()
{charname[4][10],*p[4],*t;
inti,j;
for(i=0;i<4;i++)
{7;
p[i]=name[i];
}
for(i=0;i<3;i++)
for(j=i+1;i<4;j++)
if(8)
{t=p[i];
9;
P[j]=t;
}
for(i=0;i printf(“%s\n”,p[i]); } 得分 评卷人 六.编程题(本大题共3小题,共22分) 1.通过键盘输入一个整数m,判断该数是不是完数,如果是完数进行输出,否则输出该数不是完数,所谓完数就是因子和与它本身相等的数。 例如6=1+2+3,6就是一个完数: (6分) 2.中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱百鸡”问题: 鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何? (7分) 3.通过键盘输入n和k的值,编写程序计算f(k,n)=1k+2k+……+nk,其中用函数power(n,k)求 ,由主函数完成加法运算,最后在主函数中其结果进行输出。 (9分) 华南农业大学珠江学院期末考试答卷 2010--2011学年度下学期 考试科目: C语言 考试年级: __2010__级考试类型: (闭卷)A卷考试时间: 120分钟 学号姓名年级专业 题号 一 二 三 四 五 六 总分 得分 得分 评卷人 一、单项选择题(本大题共15小题,每小题1分,共15分) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 得分 评卷人 二、填空题(本大题共10小题,每小题2分,共20分) 1.2.3.4. 5.6.7. 8.9.10. 得分 评卷人 三、判断题(本大题共10小题,每小题1分,共10分) 1 2 3 4 5 6 7 8 9 10 得分 评卷人 四.读程序写结果(本大题共5小题,每小题3分,共15分) 1.2.3. 4.5. 得分 评卷人 五.程序填空(本大题共9空,每空2分,共18分) 1.2. 3.4. 5.6. 7.8.9. 得分 评卷人 六.编程题(本大题共3小题,共22分) 1.通过键盘输入一个整数m,判断该数是不是完数,所谓完数就是因子和与它本身相等的数。 例如6=1+2+3,6就是一个完数: (6分) 2.中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱百鸡”问题: 鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何? (7分) 3.通过键盘输入n和k的值,编写程序计算f(k,n)=1k+2k+……+nk,其中用函数power(m,n)求mn,由主函数完成加法运算,最后在主函数中其结果进行输出。 (9分)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 1011 珠江 学院 语言 期末
![提示](https://static.bingdoc.com/images/bang_tan.gif)