2017年C语言程序设计试题答案
一、单项选择题:(每小题1分,共20分)
BBDDA BCAAC CBADC DBCAB
二、填空题:(每空4分,共36分)
三、阅读程序题:(每小题5分,共20分)
四、程序设计题:(第34小题10分,第35小题各14分,共24分) 34.设计函数实现将一个字符串中小写字母转化为大写字母。(10分)
#include
/* 转换函数4分,其中:循环正确1分,判断、转换正确各1分,其余1分 */ void Convert(char * str) { while (*str != '\0') { if(islower(*str )) *str = toupper(*str); str++; } }
/* 主函数4分,其中:变量定义初始化正确1分,函数调用正确2分,输出正确1分*/ void main( ) { char str[] = "123123asadAsadMNer"; Convert(str); printf("%s\n",str); }
其它答案可根据情况酌情给分。
35计算e1
111
(14分) 的值并输出(设n=20)。
1!21!n!
#include
/* 递归函数5分 */
long factorial(int n) (1分) { if (n == 1) return n; (2分) else return n * factorial(n-1); (2分)
计算机科学学院 C语言程序设计 试卷A 第5页(共6页)
}
/* 主函数8分,其中:变量定义正确2分,循环正确得2分,函数调用格式正确2分,输出正确2分*/ 计算机科学学院 C语言程序设计 试卷A 第6页(共6页)
void main( ) { double e = 1.0; for (int i=1; i<=20; i++) { e += 1/(double)factorial(i); } printf("%lf\n",e); }
其它答案可根据情况酌情给分。
[c语言程序设计第三版课后答案]2017年C语言程序设计试题及参考答案(2)
http://m.0477edu.com/thread-2170-1-1.html