发布时间 : 星期五 文章华南农业大学c语言期末考试试卷更新完毕开始阅读ba6c738f680203d8ce2f2497
}
程序运行后的输出结果是:
3. 有下列程序段,请写出运行结果。
main( ) { char k; inti; for(i=1;i<3;i++) { scanf(“%c”,&k); switch(k)
{ case ‘0’: printf(“another\\n”); case ‘1’: printf(“number\\n”); } }
}
程序运行时,从键盘输入:01<回车>,程序执行后的输出结果是:
4.有下列程序段,请写出运行结果。
void swap(int x,int y) { int t; t=x;x=y;y=t;
printf(\
} main()
{ int a=3,b=4; swap(a,b);
printf(\}
程序运行后的输出结果是:
四、程序填空题(每空2分,共20分)
1.输入整数a和b,若a*a+b*b>100,则输出a*a+b*b的结果,否则输出a+b的结果。 main()
{ int a,b,x,y;
scanf(“%d,%d”,__ ①_______); x=a*a+b*b;
if (____②________)
{ y=x;
printf(“\\n a*a+b*b>100,%d”,y);
}
else
printf(“\\n a*a+b*b<=100 %d”,_____ _③_______);
}
2.从键盘输入10个整数,统计其中整数,零和负数的个数并输出。 main()
{ int a[10],i,s1,s2,s3;
s1=s2=s3=0; for(i=0;i<10;i++)
scanf(“%d”,____ ④ _____); for(i=0;i<10;i++) if (a[i]>0) s1++;
else if (a[i]== 0)s2++;
else _____⑤___________;
printf(“\\npos==,zer0==,neg==”,s1,s2,s3); }
3. 将输入的十进制正整数n转换为二进制数,并将转换结果输出,转换方法采用”除二取余”法。 void transfer(int m)
{ int s[20],i; for (i=0;m!=0;i++)
{ s[i]=_____ ⑥_______; m=m/2; } for(;i!=0;i--)
printf(“%d”,____ ⑦______);
} main() { int n; scanf(“%d”,&n);
_____⑧_____________ ;
}
4. mystrlen函数的功能是计算str所指字符串的长度,并作为函数
值返回。
int mystrlen(char str[]) { int i;
for(i=0;⑨!=‘\\0';i++); return(⑩); }
五、编程题(20分)
1. 有数列sum=1!+2!+3!+4!+5!+6!+??,编程实现:
(1)编写一个函数,求sum的前n项和,例如: n=3时,sum=1+2+6=9。 (2)在主函数中输入n,调用上面的函数并输出结果。