湘潭大学《C语言程序设计Ⅱ》课程考试试卷.doc
下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
2.下载的文档,不会出现我们的网址水印。
3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
文档包含非法信息?点此举报后获取现金奖励!
下载文档到电脑,查找使用更方便
12.9
积分
还剩页未读,继续阅读
关 键 词:C语言程序设计
湘潭大学C语言程序设计课程考试试卷.doc
C语言程序设计课程考试试卷
湘潭大学C语言程序设计课程考试试卷
湘潭大学C语言程序设计课程考试试卷.doc
资源描述:
湘潭大学2008年 上学期2007级
《C语言程序设计Ⅱ》课程考试试卷
(B卷) 适用年级专业 2007级测控、微电子专业
考试方式开卷(闭卷) 考试时间 120 分钟
学院 专业 班级
学号 姓名
得
分
一、单项选择题(每小题2 分,共30分,本题答案请写到答题卡上)
1、 C语言规定:在一个源程序中,main函数的位置 ( C )。
A)必须在程序的开头。
B)必须在系统调用的库函数的后面。
C)可以在程序的任意位置。
D)必须在程序的最后。
2、 在C语言中,合法的字符常量是:( B )
A) '\084' B) '\x48' C) 'ab' D) "\0"
3、printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度小于5,则输出按方式( C )。
A)从左起输出该字串,右补空格
B)按原字符长从左向右全部输出
C)右对齐输出该字串,左补空格
D)输出错误信息
4、语句while (!E); 括号中的表达式!E等价于 ( A )。
(A)E==0 (B)E!=1 (C)E!=0 (D)E==1
5、有下面的程序段
char a[3],b[]="china";
a=b;
printf("%s",a);
则 ( D )。
A)运行后将输出ch B)运行后将输出Ch
C)运行后将输出chi D)编译出错
6、在C语言中,要求运算数必须是整型的运算符是( D )。
A)/B)++C)!=D)%
7、英文小写字母d的ASCII码为100,英文大写字母D的ASCII码为( D )。
A) 50 B) 66 C) 52 D) 68
8、有输入语句:scanf(“a=%d b=%d c=%d”,&a,&b,&c);为使变量a的值为1,b为3,c为2,从键盘输入数据的正确形式应当是( C )。
A)132
B)1,3,2
C)a=1 b=3 c=2
D)a=1,b=3,c=2
9、以下程序的输出结果是( A )。
main()
{ int a=3;
printf(“%d\n”,( a-=a*a) );
}
A) –6B)12 C) 0 D) -12
10、设有如下定义:
int a=1,b=2,c=3,d=4,m=2,n=2:
则执行表达式:(m=a>b)&&(n=c>d)后,n的值为( B )。
A) 1 B) 2 C) 3 D) 0
11、有以下程序
main()
{intm[][3]={1,4,7,2,5,8,3,6,9};
inti,j,k=2;
for(i=0;i<3;i++)
{printf("%d",m[i][k]);}
}
执行后输出结果是( C )。
A) 4 5 6B) 2 5 8C) 3 6 9D) 7 8 9
12、(TC环境)若第一个printf语句的输出为196,则第二个printf语句的输出为( C )。
int a[10],*p=a;
printf("%x",p);
printf("%x",p+9);
A) 205 B) 214 C) 1a8 D)19d
13、C语言的编译系统对宏命令的处理时( D )。
A)在程序运行时进行的
B)在程序连接时进行的
C)和C程序中的其他语句同时进行编译的
D)在对源程序中其他成分正式编译之前进行的
14、当a=1,b=3,c=5,d=5时,执行下面一段程序后,x的值为( B )。
A) 1 B) 2 C) 3 D) 6
if(amain()
{
int m=0,n=0;
char c;
while(( (1) c=getchar() )!=‘\n’)
{
if(c>=‘A’&&c<=‘Z’) m++;
if(c>=‘a’&&c<=‘z’) n++;
}
printf(“%d\n”,m>n? (2) m:n );
}
2、下面程序的功能是用do-while语句求1至1000之间满足“用3除余2;用5除余3;用7除余2”的数,且一行只打印五个数。请填空。
#include main()
{
int i=1,j=0;
do{
if( (3)i%3==2&&i%5==3&&i%7==2 )
{
printf(“%4d”,i);
j=j+1;
if( (4)j%4==0 ) printf(“\n”);
}
i=i+1;
}while(i<1000);
}
3.百马驮百担:
100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马驮一担,问有大,中,小马各多少?
#includevoid main()
{
int big=0,middle=0, (5) small=0 ;
for( (6) big =0; big <=33; big ++ )
for(middle =0; middle <=50; middle ++)
{
small=100-big-middle;
if( (7) big *3.0+ middle *2.0+ small /2.0==100.0 )
printf(" %d, %d, %d\n",big,middle,small);
}
}
得
分
四、改错:(10分)
下面程序是用辗转相除法求最大公约数并将最大公约数输出。指出其中错误并改正。
include #
void main ()
{
int r,m,n;
scanf(“%d,%d”, m,n); &m,&n
r=m%n;
while (r!=0); 去掉;
{
m=n; n=r; r=m%n;
}
printf (“%d\n, n ); “
}
得
分
五、编程题。(32分)
1、韩信点兵,韩信有一对兵,他想知道有多少人,便让士兵排队报数。按从1至5报数,最末一个士兵报数为1;按从1至6报数,最末一个士兵报数为5;按从1至7报数,最末一个士兵报数为4;最后再按从1至11报数,最末一个士兵报数为10.问韩信至少有多少兵。(10分)
解:#includevoid main()
{ int x=1,find=0;
While(!find)
{ if(x%5==1&&x%6==5&&x%7==4&&x%11==10)
{ print(“x=%d\n”,x);
Find=1;
}
x++;
}
}
2、运用牛顿迭代公式:(10分)
求的值,精度要求为;(10分)
解:#include #include main( )
{ double x;
x=3;
while( fabs(x*x-3)>= 1.0E-3)
x=(x+a/x)*0.5;
printf(“The square root for 3 is:%lf”,x);
}
3、求sum=n!+(n+1)!+(n+2)!+...+m!,n,m值由键盘输入,要求调用函数。(12分)
fac(int n)
{ int i,su=1;
for(i=1;i<=n;i++)
su=su*i;
return(su);
}
#includevoid main()
{ int m,n,i;
long int sum=0;
printf("Please input the value of n and m:\n");
scanf("%d%d",&n,&m);
for(i=0;i<=(m-n);i++)
sum=sum+fac(n+i);
printf("Sum is:%ld",sum);
}
展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:湘潭大学《C语言程序设计Ⅱ》课程考试试卷.doc
链接地址:https://www.renrendoc.com/p-16563495.html