装订线
A)scanf(\ B)scanf(\C)scanf(\ D)scanf(\26、运行下面的程序,正确的输出结果是() main()
{ float x=68.7563,y=-789.125; printf(\}
A)68.756303, -789.12 B)68.756303, -789.13 C)68.7563, -789.13 D)68.7563,-789.12 27、下列表达式中,值为0的表达式是()
A)3!=0 B)3!=3>4 C)3>4==0 D)6>5>4
28、设a=3,b=2,c=6,d=5,m=7,n=8,则表达式(m=a
{ int m=8,n=34,k;
while((k=m%n)!=0) m=n,n=k; printf(\}
A)语法错误 B)8 C)2 D)34 30、下面程序的运行结果是() main()
{ int n=1,s=5;
do{ s=s*n;n++;}while(n<5); }
A)120 B)6 C)100 D)200 31、下面程序的运行结果是() #include
for(i=1;i<7;i++){ sum=1;
for(j=i;j<7;j++) sum=sum+j; } }
A)48 B)49 C)1 D)7 32、定义如下变量和数组 int i;
int x[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++) printf(\则语句的输出结果是()。 A)1 5 9 B)1 4 7 C)3 5 7 D)3 6 9 33、不能把字符串Hello!赋给数组a的语句是()
A)char a[10]={'H','e','l','l','o','!'}; B)char a[10]; a=\C)char a[10]; strcpy(a,\ D)char a[10]=\34、若有int s[4]={1,2,3,4};,则s[s[0]+2*s[2]-s[3]]的值是()
试题共10页-第16页
装订线A)1 B)2 C)3 D)4 35、C语言程序的三种基本结构是()
A)嵌套结构、递归结构、循环结构 B)递归结构、循环机构、转移结构 C)顺序结构、选择结构、循环结构 D)循环结构、转移结构、顺序结构 36、若函数的调用形式如下: f((x1,x2,x3),(y1,y2))
则函数形参的个数是()。
A)2 B)3 C)4 D)5 37、执行下列程序后的输出结果是()。 int a=3,b=4;
void fun(int x1,int x2) {
printf(\}
main()
{ int a=5,b=6; fun(a,b); }
A)3,4 B)11,1 C)11,4 D)11,6 38、以下函数值的类型是() fun(float x) { float y; y=3*x-4; return(y); }
A)不确定 B)float C)int D)void 39、C编译系统对文件包含命令#include\的处理通常是()。 A)编译处理之前 B)编译处理过程之中 C)程序连接时 D)程序执行的开始
40、设有以下宏定义,则执行语句x=2*(N+Y(5+1));后,x(设x为整型)的值是() #define N 3
#define Y(n) ((N+1)*n)
A)42 B)48 C)54 D)出错
得分
三、阅读程序填空题(在答卷上答题,本大题共9小题,每空1分,共201.5CM 分) 1、下面程序统计1至100范围的数能被3或5整除的个数,请填空完善。 #include
01) ;
for(i=1;i<=100; 02) ) if( 03) ) n++; printf(\
试题共10页-第17页
装订线
}
2、某物品原有价值为p,使用后其价值降低,价值的折扣率根据时间t(月数)确定如下:
?t?3 无折扣???3?t?6 2%折扣?6?t?12 5%折扣??12?t?21 8%折扣??t?21 10%折扣
下面程序根据输入的时间和原有的价值计算物品的现有价值,请填空完善程序。 #include
scanf(\ switch( 04) ){ case 0: d=0;break; case 1: d=2;break; case 2:
case 3:d=5;break; case 4: case 5:
case 6: d=8;break; 05) : d=10; }
printf(\ 06) ); }
3、该程序利用下面公式计算∏的近似值,取前n项之和,请填空完善程序。 ?/4?1?1?1135?7??
#include
void main() {
int i,n;
float t=1.0,pi=0;
scanf(\ 07) ); for(i=1;i<=n;i++){
pi+= 08) ; t= -t; }
printf(\}
4、下面程序判断输入字符串是否为回文(正读和逆读都一样的字符串),请填空完善程序。 #include
试题共10页-第18页
装订线
{ char str[80]; int n,k,flag=1; gets(str);
for(n=0;str[n]!='\\0';n++); for(k=0;k if( 10) ) printf(\不是回文!\\n\ else printf(\是回文!\\n\ } 5、下面程序的功能是输出若干个字符串中长度最短的字符串,注意输入时直接按回车输入的是空字符串,请填空完善程序。 #include { char str1[80],min[80]; int k,len; printf(\ gets(str1); strcpy(min,str1); len=strlen(min); gets(str1); while(str1[0]!='\\0'){ k=strlen(str1); if( 11) ){ len=k; 12) ; } gets(str1); } printf(\} 6、下面函数的功能实现对一维数组中元素数据由小到大顺序排序,请填空完善程序。 void sort(int a[],int n) { int i,j,t; for(i=0;i for(j=1;j< 13) ;j++) if( 14) ){ t=a[j-1]; a[j-1]=a[j]; a[j]=t; } } 7、下列函数str_cat()的功能是连接两个字符串,请填空完善程序。 试题共10页-第19页 装void str_cat(char str1[],char str2[2],char str[]) { int i,j; for(i=0;str1[i]!='\\0';i++) str[i]=str1[i]; for(j=0;str2[j]!='\\0';j++) 15) ; 16) ; } 8、下面程序的功能是用递归方法计算n!,请填空完善程序。 #include if(n<=0) exit(0); /*exit()返回操作系统*/ else if( n==1) k=1.0; else 17) ; return k; } void main() { int n; scanf(\ printf(\ 18) ); } 9、下面程序的功能是通过键盘输入10个整数,并把其中最大的数和最小的数显示出来。 #include void search(int a[],int n) { int i; max=min=a[0]; for(i=1;i if(a[i]>max) max=a[i]; if(a[i] void main() { int array[10],i; for(i=0;i<10;i++) scanf(\ search( 20) ) printf(\ } 得分 订线 试题共10页-第20页 四、编写程序题(在答卷上答题,本大题共3小题,第1,2小题各5分;第3小题10分,共20分) 1235,,,,?23581、编程计算分数序列前10项之和,并在屏幕上显示结果。 2、编程显示1900年至2000年份中的闰年,每行最多显示10个。 3、根据如下main函数中函数声明格式要求,编写一个判断一个数是否为素数的函数,如果是素数返回1,否则返回0。要求画出该函数的算法流程图。 #include #include int prime(int n); int n,m=0; for(n=100;n<=500;n++) if(prime(n)){ printf(\ m++; } printf(\素数的个数:%d\ } 试题共10页-第21页