安徽农业大学C语言题库试题.docx
《安徽农业大学C语言题库试题.docx》由会员分享,可在线阅读,更多相关《安徽农业大学C语言题库试题.docx(33页珍藏版)》请在冰豆网上搜索。
![安徽农业大学C语言题库试题.docx](https://file1.bdocx.com/fileroot1/2023-2/24/1aadfe7b-f673-4827-883f-5fa48ad1223f/1aadfe7b-f673-4827-883f-5fa48ad1223f1.gif)
安徽农业大学C语言题库试题
有以下程序
#include"stdio.h"
intabc(intu,intv);
voidmain()
{inta=24,b=16,c;
c=abc(a,b);
printf('%d\n",c);
}
intabc(intu,intv)
{intw;
while(v)
{w=u%v;u=v;v=w}
returnu;
}
输出结果是
A)6B)7C)8D)9
有以下程序
#include
charfun(charx,chary)
{if(x<y)
returnx;
returny;
}
voidmain()
{inta='9',b='8',c='7';
printf("%c\n",fun(fun(a,b),fun(b,c)));
}
程序的执行结果是
A)函数调用出错B)8C)9D)7
设有如下的函数
ggg(x)
floatx;
{printf("\n%d",x*x);}
则函数的类型
A)与参数x的类型相同B)是voidC)是intD)无法确定
能正确表示a〉=10或a=〈0的关系表达式是
A)a〉=10ora〈=0B)a〉=10│a〈=0
C)a〉=10&&a〈=0D)a>=10││a〈=0
以下所列的C语言常量中,错误的是
A)0xFFB)1.2e0.5C)2LD)‘\72’
以下所列的C语言常量中,错误的是
A)0xFFB)1.2e0.5C)2LD)‘\72’
以下程序段的输出结果是_______
#include"stdio.h"
voidmain()
{unsignedinti=65535;
printf("%d\n",i);
}
A)65535B)0C)有语法错误,无输出结果D)-1
以下程序的输出结果是
A)98B)89C)66D)以上三个都不对
#include“math.h”
main()
{doublea=-3.0,b=2;
printf(“%3.0f%3.0f\n”,pow(b,fabs(a)),pow(fabs(a),b));
}
下面程序运行结果为。
main()
{charc=′a′;
if(′a′〈c〈=′z′)printf("LOW");
elseprintf("UP");
}
A)LOWB)UPC)LOWUPD)语句错误,编译不能通过
请写出以下程序的输出结果___。
main()
{inta=100;
if(a〉100)printf(“%d\n”,a〉100);
elseprintf(“%d\n”,a〈=100);
}
A0B1C100D-1
有如下程序
main0
{intx=1,a=0,b=0;
switch(x){
case0:
b++;
case1:
a++
case2:
a++;b++
}
printf(“a=%d,b=%d\n”,a,b);
}
该程序的输出结果是
A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=2
已知各变量的类型说明如下:
intk,a,b;
unsignedlongw=5;
doublex=1.42;
则以下不符合C语言语法的表达式是
A.x%(-3)
B.w+=-2
C.k=(a=2,b=3,a+B.
D.a+=a-=(b=4)*(a=3)
以下程序输出的结果是____。
main()
{floata=5,b=4,d;
d=(a>b);
printf("%d\n",d);
}
A.1
B.0
C.1.0
D.4
下列选项中不是结构化程序基本结构的是
A.顺序结构
B.跳转分支结构
C.选择结构
D.循环结构
执行以下程序段后s的值是_____
intk,j,s;
for(k=2;k<6;k+=2)
{s=1;
for(j=k;j<6;j++)s+=j;
}
A)9B)1C)11D)10
若有如下语句
intx=3;
do
{
printf("%d\n",x-=2);
}while(!
(--x));
则上面程序段输出的是:
________。
A)1B)1和-2C)3和0D)是死循环
编制C语言程序的步骤是________。
A.编译、连接、编辑、运行
B.编辑、连接、编译、运行
C.编辑、编译、连接、运行
D.编译、编辑、连接、运行
C语言程序的执行,总是起始于。
A程序中的第一条可执行语句B程序中的第一个函数
Cmain函数D包含文件中的第一个函数
源程序要正确地运行,必须要有什么函数?
A.printf函数B.自定义的函数
C.main函数D.不需要函数
以下能将字符串:
youareluck!
正确读入的语句组是__________。
A)chars[80];scanf("%s",s);
B)char*s;scanf("%s",s);
C)chars[80];gets(s);
D)char*s;gets(s);
下面程序段的运行结果是________。
charc[5]={'a','b','\0','c','\0'};
printf("%s",c);}
A)'a''b'B)abC)abcD)ab\0c\0
当输入"Beijing2008"时,下列程序段的输出结果是______。
gets(st);strlwr(st);
stt[]="nihao";strcat(st,stt);puts(st);
A.beijinghihaoB.beijing2008nihao
C.Beijing2008nihaoD.Beijingnihao
下面程序段的运行结果是____________。
#include
voidmain()
{
charstr[]="WLI",c;
intk;
for(k=0;(c=str[k])!
='\0';k++)
{
switch(c)
{
case'I':
case'L':
break;
default:
putchar(c);continue;
}
putchar('*');
}
}
下面程序段的运行结果是____________。
#include
voidmain()
{inti;
for(i=1;i<=3;i++)
{if(i%2)
printf("*");
else
break;
printf("#");
}
printf("$");
}
分析如下程序,若此程序运行输出结果是:
#include
voidfun(int*x)
{
printf("%d\n",*x+10);
}
voidmain()
{
inta=25;
fun(&a);
}
分析如下程序,此程序运行时输出结果是:
#include
voidmain()
{
structu{char*name;
intage;
intincome;}s;
s.name="Wangling";s.age=28;s.income=1000;
printf("%d\n",s.age);
}
下面程序的输出结果是()
#include〈stdio.h〉
voidmain()
{
intx=-2,y=1,z=2;
if(x〈y)
if(y〈0)z=0;
elsez+=1;
printf("%d\n",z);
}
考生注意:
先将源程序文件714.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!
要求:
补充程序使得程序运行时完成以下功能:
计算2个数的平方差(结果=第一个数的平方减去第二个数的平方)
要求:
1)2个数由键盘输入
2)通过函数调用实现(计算方法在子函数中,通过主函数调用实现)
3)将结果显示出来
考生注意:
先将源程序文件111.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!
要求:
补充程序使得程序运行时完成以下功能:
**
******
**
并以原文件名保存(不得删除原文件中的注释内容,否则该题不计分)。
考生注意:
先将源程序文件202.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!
要求:
补充程序使得程序运行时完成以下功能:
输入一个整数,判断它是否是水仙花数,(水仙花数的个位、十位、百位三个数的立方和等于这个数本身)
要求:
1)从键盘输入整数,先判断用户输入的是不是3位数;
2)若用户输入的是3位数再判断它是不是水仙花数。
并以原文件名保存(不得删除原文件中的注释内容,否则该题不计分)。
考生注意:
先将源程序文件309.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!
补充程序使得程序运行时完成以下功能:
计算公式:
s=1!
+2!
+3!
+...+n!
式中的n!
表示n的阶乘
要求:
1)n的值由键盘输入(n小于8)
2)将s的值显示出来。
并以原文件名保存(不得删除原文件中的注释内容,否则该题不计分)。
题号:
1分值:
2得分:
2答案:
C试卷:
C
题号:
2分值:
2得分:
2答案:
D试卷:
D
题号:
3分值:
2得分:
0答案:
C试卷:
D
题号:
4分值:
2得分:
2答案:
D试卷:
D
题号:
5分值:
2得分:
0答案:
B试卷:
C
题号:
6分值:
2得分:
2答案:
D试卷:
D
题号:
7分值:
2得分:
0答案:
A试卷:
题号:
8分值:
2得分:
0答案:
B试卷:
题号:
9分值:
2得分:
0答案:
A试卷:
题号:
10分值:
2得分:
0答案:
B试卷:
题号:
11分值:
2得分:
0答案:
A试卷:
题号:
12分值:
2得分:
0答案:
A试卷:
题号:
13分值:
2得分:
0答案:
A试卷:
题号:
14分值:
2得分:
0答案:
B试卷:
题号:
15分值:
2得分:
0答案:
D试卷:
题号:
16分值:
2得分:
0答案:
B试卷:
题号:
17分值:
2得分:
0答案:
C试卷:
题号:
18分值:
2得分:
0答案:
C试卷:
题号:
19分值:
2得分:
0答案:
C试卷:
题号:
20分值:
2得分:
0答案:
C试卷:
题号:
21分值:
2得分:
0答案:
B试卷:
题号:
22分值:
2得分:
0答案:
B试卷:
题号:
23分值:
2得分:
0答案:
W**试卷:
题号:
24分值:
2得分:
0答案:
*#$试卷:
题号:
25分值:
2得分:
0答案:
35试卷:
题号:
26分值:
2得分:
0答案:
28试卷:
题号:
27分值:
2得分:
0答案:
3试卷:
1.有以下程序
#include
intf(intn)
{if(n==1)
return1;
else
returnf(n-1)+1;
}
voidmain()
{inti,j=0;
for(i=1;i<3;i++)
j+=f(i);
printf("%d\n",j);
}
程序运行后的输出结果是______。
A)4 B)3 C)2 D)1
2.有以下程序
#include
voidf(intx,inty)
{intt;
if(x〈y){t=x;x=y;y=t;}
}
voidmain()
{inta=4,b=3,c=5;
f(a,b);
f(a,c);
f(b,c);
printf("%d,%d,%d\n",a,b,c);
}
执行后输出的结果是
A)3,4,5B)5,3,4C)5,4,3D)4,3,5
3.以下程序的输出结果是
A)699B)669C)61515D)6615
#include
intd=1;
fun(intp)
{staticintd=5;
d+=p;
printf("%d",d);
return(d);
}
voidmain()
{inta=3;printf("%d\n",fun(a+fun(d)));}
4.为表示关系x〉=y〉=z,应使用的C语言表达式是
A)(x〉=y)﹠﹠(y〉=z)B)(x〉=y)AND(y〉=z)
C)(x〉=y〉=z)D)(x〉=y)﹠(y〉=z)
下面不正确的赋值语句是_____________。
A.a=a+1B.a==bC.a+=bD.a=1
该源程序执行后,屏幕上显示什么?
voidmain()
{inta;
floatb;
a=4;
b=9.5;
printf("a=%d,b=%4.2f\n",a,b);
}
A.a=%d,b=%f\nB.a=%d,b=%f
C.a=4,b=9.50D.a=4,b=9.5
设变量定义为“inta,b;”,执行下列语句时,输入_____,则a和b的值都是10。
scanf("a=%d,b=%d",﹠a,﹠b);
A、1010B、10,10C、a=10b=10D、a=10,b=10
若X和Y都是int型变量,X=100,Y=200,且有下面的程序片段:
printf(“%d”,(X,Y));
上面程序片段的输出结果是
A)200B)100
C)100200D)输出格式符不够,输出不确定的值
阅读下面的程序:
#include"stdio.h"
voidmain()
{
intk=-3;
if(k〈=0)printf("####");
elseprintf("﹠﹠﹠﹠");
}
上面程序片段的输出结果是()
A)####B)﹠﹠﹠﹠
C)####﹠﹠﹠﹠D)有语法错误,无输出结果
若执行以下程序时从键盘上输入9,则输出结果是
A)11B)10C)9D)8
main()
{intn;
scanf(“%d”,﹠n);
if(n++〈10)printf(“%d\n”,n);
elseprintf(“%d\n”,n--);
}
以下程序段中与语句k=a〉b?
(b〉c?
1:
0):
0;功能等价的是()
A)if((a〉b)﹠﹠(b〉c))k=1;elsek=0;B)if((a〉b)||(b〉c))k=1;elsek=0;
C)if(a〈=b)k=0;elseif(b〈=c)k=1;D)if(a〉b)k=1;elseif(b〉c)k=1;elsek=0;
已知intk=10,m=3,n;则下列语句输出结果是
printf("%d\n",n=(k%m,k/m));
A.2
B.3
C.4
D.5
若变量已正确定义并赋值,以下符合C语言语法的表达式是
A.a:
=b+1
B.a=b=c+2
C.int18.5%3
D.a=a++7
有如下程序
main()
{floatx=2.0,y;
if(0.0>x)y=0.0;
elseif(10.0>x)y=1.0/x;
elsey=1.0;
printf("%f\n",y);}
该程序的输出结果是
A.0.000000
B.0.250000
C.0.500000
D.1.000000
C语言中while和do-while循环的主要区别是________。
A)do-while的循环体至少无条件执行一次。
B)while的循环控制条件比do-while的循环控制条件严格。
C)do-while允许从外部转到循环体内。
D)do-while的循环体不能是复合语句。
intx=0,y=5,z=3;
while(z-->0&&++x<5)y=y-1;
printf(“%d,%d,%d\n”,x,y,z);
以上程序段的输出结果是_________
A)3,2,0B)3,2,-1C)4,3,-1D)5,-2,-5
下列字符串不符合标识符规定的是。
A)SUMB)sumC)3cdD)end
C语言中主函数的个数是______。
A.2个B.1个
C.任意个D.10个
C语言中主函数的个数是______。
A.2个B.1个
C.任意个D.10个
下列选项中,合法的C语言关键字是
AVARBcharCintegerDdafault
下面是对s的初始化,其中不正确的是___________。
A)chars[5]={"abc"};B)chars[5]='a','b','c'};
C)chars[5]="";D)chars[5]="abcdef";
以下能正确定义一维数组的选项是_______
A)inta[5]={0,1,2,3,4,5}; B)chara[]={0,1,2,3,4,5};
C)chara={'A','B','C'}; D)inta[5]="0123";
当输入"Beijing2008"时,下列程序段的输出结果是______。
gets(st);strlwr(st);
stt[]="nihao";strcat(st,stt);puts(st);
A.beijinghihaoB.beijing2008nihao
C.Beijing2008nihaoD.Beijingnihao
以下程序运行后的输出结果是_____。
charch[]="abc",x[3][4];inti;
for(i=0;i<3;i++)strcpy(x[i],ch);
for(i=0;i<3;i++)printf("%s",x[i][i]);
以下程序运行后的输出结果是__________。
#include
voidmain()
{intx=15;
while(x>10&&x<50)
{x++;
if(x/3){x++;break;}
elsecontinue;
}
printf("%d",x);
}
分析以下程序,写出此程序的运行结果:
#include
intx,y;
ints()
{intz;
x=3;y=4;
z=x+y;
return(z);
}
voidmain()
{
intn;
x=1;y=2;
n=s();
printf("n=%d",n+x+y);
}
分析如下程序,此程序运行时输出结果是:
#include
typedefstruct
{inta;
floatb;
char*c;
}UN;
voidmain()
{
staticUNx={19,83.5,"zhang"};
UN*px;
px=&x;
printf("%s",px->c);
}
以下程序的输出结果是。
#include〈stdio.h〉
voidmain()
{
charc='A';
printf("%c",c+4);
}
考生注意:
先将源程序文件701.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!
要求:
补充程序使得程序运行时完成以下功能:
计算一个数的平方
要求:
1)所求数由键盘输入
2)通过函数调用实现(计算方法在子函数中,通过主函数调用实现)
3)将求的平方数值显示出来
考生注意:
先将源程序文件102.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!
要求:
补充程序使得程序运行时完成以下功能:
编写一个程序,向屏幕输出以下信息:
Hello!
欢迎学习C语言
考生注意:
先将源程序文件207.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!
要求:
补充程序使得程序运行时完成以下功能:
输入一个分数,输出成绩的等级,若分数>=90,等级为A,若分数介于80和89之间,等级为B
若分数介于70和79之间等级为C,分数介于60和69之间等级为D,60以下的分数等级为E
要求:
1)从键盘输入分数,输出成绩的等级
并以原文件名保存(不得删除原文件中的注释内容,否则该题不计分)。
考生注意:
先将源程序文件605.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!
要求:
补充程序使得程序运行时完成以下功能:
用选择法对10个整数按由大到小顺序排列。
要求:
1)从键盘读入10个整数到数组;
2)用选择法进行排序;
3)显示排序后的数组。
考生注意:
先将源程序文件605.c复制到D盘中操作,操作完成后,将此文件复制回来(覆盖)!
要求:
补充程序使得程序运行时完成以下功能:
用选择法对10个整数按由大到小顺序排列。
要求:
1)从键盘读入10个整数到数组;
2)用选择法进行排序;
3)显示排序后的数组。
题号:
1分值:
2得分:
0答案:
B试卷:
题号:
2分值:
2得分:
0答案:
D试卷:
题号:
3分值:
2得分:
0答案:
C试卷:
题号:
4分值:
2得分:
0答案:
A试卷:
题号:
5分值:
2得分:
0答案:
B试卷:
题号:
6分值:
2得分:
0答案:
C试卷:
题号:
7分值:
2得分:
0答案:
D试卷:
题号:
8分值:
2得分:
0答案:
A试卷: