装订线 1.5CM
A)string is:goodbaby B)string is:goodbby C)string is:goodb D)string is:g 37、下列程序段中,有错误的是() A)int f() B)int f2() { int x;
{
scanf(\ return (x>1?printf(\ return x++,x+5; }
}
C)main()
D)void chang(int x,int y) { float a=2.6,b;
{
b=max(2.1,3.6)=a++; int t;
printf(\ t=x;x=y;y=t; } }
38、以下函数值的类型是()
fun(float x) { float y; y=3*x-4; return(y); }
A)不确定 B)float C)int D)void 39、设有宏定义命令:
#define SUM 2+3
则表达式5+SUM*5的值为()
A)50 B)30 C)22 D)20
40、在文件包含预处理的定义形式中,#include后的文件名用<>括起来时,寻找被包含文
件的方式是()。
A)仅搜索当前目录
B)先在源程序所在的目录搜索,再按系统设定的标准方式搜索 C)仅搜索源程序所在目录
D)直接按系统设定的标准方式搜索
得分
三、阅读程序填空题(在答卷上答题,本大题共9小题,每空1分,共20分)
1、下面程序实现分别输出1至100(不包括100)范围内所有偶数的和与所有奇数的和,请填空完善。
#include
5
void main() { int i,s1,s2;
01) ;
for(i=1;i<100; 02) ) if( 03) ) s2+=i; esle s1+=i;
printf(\偶数和=%d,奇数和=%d\}
2、某物品原有价值为p,使用后其价值降低,价值的折扣率根据时间t(月数)确定如下:
无折扣?t?3 ?3?t?6 2%折扣??5%折扣 ?6?t?12 ?12?t?21 8%折扣?? 10%折扣?t?21 下面程序根据输入的时间和原有的价值计算物品的现有价值,请填空完善程序。
#include
void main() { int t,d; float p;
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??#include
int i,n;
float t=1.0,pi=0;
scanf(\ 07) ); for(i=1;i<=n;i++){
6
1311??? 57装订线
pi+= 08) ; t= -t; }
printf(\}
4、下面程序完成输入一个整数并判断是否为素数,请填空完善程序。
#include
scanf(\ k=sqrt(n);
for(i=2;i<=k;i++)
if( 09) ) break; if( 10) ) printf(\ }
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、下列程序的功能输入一组数的5个元素,并依次后移一个位置,再将第5个数据放在第一个存储单元(下标为0),请填空完善程序。
#include
void main() { int a[5],t,i;
printf(\原数据序列为:\
7
for(i=0;i<5;i++) scanf(\ 13) ; for(i=4;i>0;i--) 14) ; a[0]=t;
printf(\操作后数据序列为:\\n\ for(i=0;i<5;i++) printf(\}
7、下列函数str_cat()的功能是连接两个字符串,请填空完善程序。
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
max=min=a[0]; for(i=1;i if(a[i]>max) max=a[i]; if(a[i] void main() 8