大学大一C语言程序设计期末考试试卷及答案剖析
大学大一C语言程序设计期末考试试卷及答案剖析教学教材

四川师范大学计算机科学学院 2012~2013学年度第二学期期末考试C 语言程序设计试卷 试卷A答卷说明:1、本试卷共6页,答题纸3页,4个大题,35个小题,满分100分,120分钟完卷。
2、闭卷考试,所有的答案都必须写在答题纸上,判卷以答题纸上答案为准。
3、本试卷适用于2011级1、2、3班。
一、 单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题1分,共20分) 1、 在C 语言中,下列标识符中合法的是( )A). -int B). in1_3 C). A_B!D D). const2、 不属于C 语言基本数据类型的是( )A). int B). union C). char D). unsigned3、 下面是对宏定义的描述。
不正确的是( )A). 宏不存在类型问题,宏名无类型,它的参数也无类型 B). 宏替换不占用运行时间C). 宏替换只是字符串的简单替代D). 宏替换时先检查类型,类型一致时才可以替换4、 C 语言中,″\\xfds ″在内存中占用的字节数是( )A).3 B).4 C).5 D).65、 设int x;则执行printf(″%x \n″,~x^x);的结果是( )A). ffffffff B). ff C). 0 D). 16、 对于while 语句,错误的说法是( )A).用条件控制循环体的执行次数 B).循环体至少要执行一次__________________学院__________级___________班 姓名_______________ 学号_______________………………………………(密)………………………………(封)………………………………(线)………………………………密 封 线 内 答 题 无 效C).循环体有可能一次也不执行D).循环体中可以包含若干条语句7、执行下列语句后输出的结果是( )int a=8,b=7,c=6;if(a<b)if(b>c){a=c;c=b;}printf("%d,%d,%d\n",a,b,c);A).6,7,7 B).6,7,8 C).8,7,6 D).8,7,88、设int a=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是( )A).9,19 B).9,20 C).10,19 D).10,209、设static char x[ ]=″12345″,y[ ]={′1′,′2′,′3′,′4′,′5′,′\0′};那么( )A).x数组的长度等于y数组的长度B).x数组的长度大于y数组的长度C).x数组的长度少于y数组的长度D).x数组与y数组的存储区域相同10、设int i,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( )for(i=0;i<3;i++)printf(″%d″,x[i][2-i]);A).147 B).159 C).357 D).36911、执行完下列语句后,n的值是( )int n;for (n=0 ; n<100 ; n=2*n+1);A).125 B).126 C).127 D).12812、有以下语句:int a=6;a+=a-=a*a;printf(“%d”,a);输出结果( )A).–132 B).–60 C). -24 D). 013、为了连接两个字符串s1与s2,应当使用( )A). strcat( s1,s2 ) B). strcpy( s1, s2 ) C). strlen( s1, s2 ) D). strcmp( s1, s2 )14、设int a,*p;则语句p=&a;中的运算符“&”的含义是( )A).位与运算 B).逻辑与运算C).取指针内容 D).取变量地址15、下面输出的结果为( )i nt a=13, b=64;printf(“%d\n”, !a || (b>>3) );A).13 B).64C).1 D).016、下列定义正确的是( )A).enum t={a,b}x; B). enum t{1,2}x; C). e num {′+′,′-′}x;D). enum t{a,b}x;17、设有定义:struct u{int a[4];float b[3]; char c[16];}aa;则printf(″%d \n″,sizeof(aa));的输出是( )A).32 B).36 C).12 D).818、 数据-54.78在文本文件中占用的字节个数是( )A).4 B).5 C).6 D).819、 在宏定义#define p(r) 3.14*r 中,请问宏名是( )A). p B). p(r) C). 3.14*r D). p(r) 3.14*r 20、 要打开一个已存在的用于修改的非空二进制文件“hello.txt ”,正确语句是( )A). fp=fopen( "hello.txt ","r" ) B). fp=fopen( "hello.txt ","ab+" ) C). fp=fopen( "hello.txt ","w" ) D). fp=fopen( "hello.txt ","r+" )二、填空题(仔细阅读每小题的说明和源代码,并将正确答案写到答题纸上对应的题号处。
大一c期末考试题及答案

大一c期末考试题及答案大一C语言期末考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个选项是合法的标识符?A. 2variableB. variable2C. variable-2D. variable$2答案:B2. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. stringD. double答案:C3. 在C语言中,以下哪个选项不是运算符?A. +B. -C. %D. :答案:D4. 若有定义:int a=5, b=3;,则表达式a%b的值是多少?A. 2B. 1C. 0D. 3答案:A5. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. forD. while答案:B6. 在C语言中,以下哪个选项是正确的字符串声明?A. char str[5] = "hello";B. char str[] = {'h', 'e', 'l', 'l', 'o'};C. char str[6] = "hello";D. char str[] = "hello";答案:D7. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A8. 下列哪个选项不是C语言中的数组?A. int a[5];B. int a[5] = {1, 2, 3, 4, 5};C. int a[] = {1, 2, 3};D. int a = {1, 2, 3};答案:D9. 在C语言中,以下哪个选项是正确的函数声明?A. int add(int a, int b);B. int add(int, int);C. int add();D. int add(int a);答案:A10. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopen()B. fclose()C. printf()D. scanf()答案:A二、填空题(每空2分,共20分)1. 在C语言中,用于定义一个整型变量的关键字是________。
c语言大一期末考试题库及详解答案

c语言大一期末考试题库及详解答案C语言大一期末考试题库及详解答案一、选择题1. 下列哪个选项是C语言的关键字?A. IntegerB. StringC. FloatD. None of the above答案:D2. 在C语言中,定义一个整型变量的正确语法是什么?A. int var;B. var int;C. integer var;D. var integer;答案:A3. 以下哪个表达式的结果不是整数?A. 3 / 2B. 7 % 3C. 10 / 2D. 8 / 2答案:A二、填空题1. 在C语言中,用于定义数组的关键字是________。
答案:Array2. 一个C语言程序的执行从________函数开始。
答案:main3. 以下语句的输出结果是________。
```cint a = 5, b = 10;printf("%d", a + b);```答案:15三、简答题1. 简述C语言中指针的概念及其用途。
答案:指针是C语言中用来存储变量地址的变量。
它允许程序员直接访问内存地址,从而可以动态地操作内存。
指针的用途包括动态内存分配、实现数据结构如链表、数组的遍历等。
2. 解释C语言中的函数重载。
答案:C语言不支持函数重载。
在C语言中,如果两个或多个函数具有相同的名称但参数列表不同,编译器会报错。
这是与支持函数重载的语言(如C++)的主要区别。
四、编程题1. 编写一个C语言程序,实现计算并输出1到100的整数之和。
```c#include <stdio.h>int main() {int sum = 0, i;for(i = 1; i <= 100; i++) {sum += i;}printf("The sum of numbers from 1 to 100 is: %d\n", sum);return 0;}```2. 编写一个C语言函数,实现字符串反转的功能。
大一c程序设计期末考试题及答案

大一c程序设计期末考试题及答案在本次大一C程序设计的期末考试中,我们精心准备了以下题目,旨在考察同学们对C语言基础知识的掌握程度以及编程能力。
以下是考试题目及参考答案。
一、选择题(每题2分,共20分)1. C语言中,哪个关键字用于声明函数?A. intB. voidC. returnD. function答案:A2. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable-nameC. _variableD. variable$name答案:C3. 在C语言中,哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A4. 若有以下代码片段:```cint a = 5;int b = 10;a = b;```执行后,变量a的值是多少?A. 5B. 10C. 15D. 0答案:B5. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. 以上都是答案:D6. C语言中,哪个函数用于输入字符?A. scanf()B. printf()C. getchar()D. getc()答案:C7. 下列哪个选项是C语言中的循环结构?A. ifB. switchC. forD. do-while8. 在C语言中,哪个关键字用于定义数组?A. arrayB. listC. vectorD. int[]答案:D9. 下列哪个选项是C语言中的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello" "World"D. 'Hello' 'World'答案:A10. 在C语言中,哪个函数用于输出格式化的字符串?A. printf()B. scanf()C. sprintf()D. fprintf()答案:A二、填空题(每空2分,共20分)1. 在C语言中,使用____关键字可以定义一个函数。
大一c 考试题及答案解析

大一c 考试题及答案解析大一C考试题及答案解析一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个函数?A. intB. whileC. returnD. void答案:D解析:在C语言中,`void`关键字用于定义一个函数,表示该函数不返回任何值。
2. 下列哪个选项是C语言中的合法标识符?A. 2variableB. intC. _variableD. variable-答案:C解析:C语言中的标识符可以由字母、数字和下划线组成,但不能以数字开头,也不能包含空格或特殊字符。
3. 以下哪个选项是C语言中的逻辑运算符?A. &&B. ||C. +=D. +=答案:A解析:`&&`是C语言中的逻辑与运算符,用于判断两个表达式是否同时为真。
4. C语言中,以下哪个选项是正确的字符串声明?A. char str[10] = "Hello";B. char str[10] = 'Hello';C. char str = "Hello";D. char str[10] = {"Hello"};答案:A解析:在C语言中,字符串应该使用字符数组来声明,并使用双引号来初始化。
5. 下列哪个选项是C语言中的循环结构?A. ifB. switchC. forD. break答案:C解析:`for`是C语言中的循环结构之一,用于重复执行一段代码。
6. C语言中,以下哪个选项是正确的二维数组声明?A. int arr[3][4];B. int arr[][] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};C. int arr[3][];D. int arr[3][4] = {1, 2, 3, 4, 5, 6, 7, 8};答案:A解析:在C语言中,二维数组需要在声明时指定第一维的大小,第二维可以不指定。
大一c语言期末考试题及答案解析

大一c语言期末考试题及答案解析一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的关键字?A. intB. floatC. doubleD. all of the above答案:D2. C语言中,用于定义单精度浮点数的关键字是?A. intB. floatC. doubleD. char答案:B3. 下列哪个函数用于将浮点数转换为字符串?A. sprintfB. printfC. scanfD. strcat答案:A4. 在C语言中,哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A5. 下列哪个选项不是C语言中的控制结构?A. ifB. forC. whileD. switch答案:D6. C语言中,用于定义字符数组的关键字是?A. charB. stringC. arrayD. vector答案:A7. 下列哪个函数用于输出格式化的字符串?A. printfB. scanfC. fprintfD. sprintf答案:A8. C语言中,用于定义整型变量的关键字是?A. intB. floatC. doubleD. char答案:A9. 下列哪个选项不是C语言中的运算符?A. %B. &&C. ||D. ==答案:D10. 在C语言中,用于定义布尔变量的关键字是?A. boolB. intC. charD. float答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确语法是:___________。
答案:int variable_name;2. C语言中,用于输入一个整数的函数是:___________。
答案:scanf3. 如果要定义一个字符串常量,应该使用___________符号。
答案:"4. 在C语言中,使用___________关键字可以定义一个函数。
答案:void 或者其他返回类型5. C语言中,用于定义一个数组的语法是:___________。
大学大一C语言程序设计期末考试试卷及答案

__ _ _ _ _ _ _ _ _ _ _ _ _ _号学_ _ _ _ _ _ _ _ _ _ _ _ _ _ _名姓班_ _ _ _ _ _ _ _ _ _ _级_ _ _ _ _ _ _ _ _ _院学_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _四川师范大学计算机科学学院2012~2013 学年度第二学期期末考试⋯C语言程序设计试卷试卷 A⋯⋯⋯答卷说明:⋯1、本试卷共 6 页,答题纸 3 页, 4 个大题, 35 个小题,满分 100 分,⋯⋯120 分钟完卷。
⋯⋯2、闭卷考试,所有的答案都一定写在答题纸上,判卷以答题纸上答案⋯为准。
⋯效3、本试卷合用于 2011 级 1、2、3 班。
⋯)(无号一二三四分分人⋯⋯⋯⋯题分数⋯⋯⋯⋯答得分卷人⋯⋯⋯⋯)内一、( 在每小的四个答案中,出一个正确答案,并将正确答案的封(序号填在干的括号内。
每小 1 分,共 20 分)⋯⋯1、在 C 言中,以下符中合法的是()⋯线A).-int B). in1_3C).A_B!D D).const⋯⋯⋯2、不属于 C 言基本数据型的是 ()⋯A). int B). union C). char D). unsigned⋯封⋯⋯3、下边是宏定的描绘。
不正确的选项是()⋯⋯密A).宏不存在型,宏名无型,它的参数也无型)密B).宏替不占用运转(C).宏替不过字符串的代替⋯D).宏替先型,型一致才能够替⋯⋯⋯4、 C 言中,″\\xfds ″在内存中占用的字数是 ()⋯⋯A).3B).4C).5D).6⋯⋯⋯5、int x; 行 printf(″n%x″ ,~x^x);的果是 ()⋯A). ffffffff B). ff C). 0D). 1⋯⋯6、于 while 句,的法是 ()A). 用条件控制循体的行次数B). 循体起码要行一次C).循环体有可能一次也不履行D). 循环体中能够包括若干条语句7、履行以下语句后输出的结果是()int a=8,b=7,c=6;if(a<b)if(b>c){a=c;c=b;}printf("%d,%d,%d\n",a,b,c);A).6 , 7, 7B).6, 7, 8C).8,7, 6D).8, 7, 88、设 int a=9,b=20 ;则 printf(″ %d,%dn″ ,a,----b) ;的输出结果是 ()A).9 , 19B).9, 20C).10,19D).10, 209、设 static char x[ ]=″ 12345 ″ ,y[ ]={′ 10′;},那′么2′( , ′)3′ , ′ 4′ , ′ 5′ , ′A).x 数组的长度等于y 数组的长度B).x数组的长度大于y 数组的长度C).x 数组的长度少于y 数组的长度D).x数组与 y 数组的储存地区同样10、设 int i,x[3][3]={1,2,3,4,5,6,7,8,9};则下边语句的输出结果是()for(i=0;i<3;i++)printf(″ %d″ ,x[i][2-i]);A).147B).159C).357D).36911、履行完以下语句后,n 的值是 ()int n;for (n=0 ; n<100 ; n=2*n+1);A).125B).126C).127D).12812、有以下语句: int a=6;a+=a- =a*a;printf(“ %d输”出,a);结果()A). –132B).–60C). -24D). 013、为了连结两个字符串s1 与 s2,应该使用 ( )A). strcat( s1 , s2 )B). strcpy( s1, s2 )C). strlen( s1, s2 )D). strcmp( s1, s2 )14、设 int a,*p ;则语句 p=&a; 中的运算符“ &”的含义是 ()A). 位与运算B).逻辑与运算C).取指针内容D). 取变量地点15、下边输出的结果为 ()i nt a=13, b=64;printf(“n%d”,!a || (b>>3) );A).13B).64C).1D).016、以下定义正确的选项是()A).enum t={a,b}x;B). enum t{1,2}x;C). enum { ′ +-′ ,}x;′D). enum t{a,b}x;17、设有定义:struct u{int a[4];float b[3]; char c[16];}aa;⋯⋯_ ⋯ __ ⋯ _ _ ⋯ _ ⋯__⋯__ ⋯ _ ⋯__⋯__⋯号⋯学)_(_ ⋯ _ ⋯__⋯__⋯__ ⋯ _ ⋯__⋯__⋯_⋯名⋯姓⋯⋯)班封_(__⋯__ ⋯ _ ⋯__⋯__⋯_⋯级⋯_ _ ⋯ __ ⋯ __ ⋯ _ _ ⋯ _ ⋯_院)密学_(_ ⋯ __ ⋯ __ ⋯ _ _ ⋯ _ ⋯__⋯__⋯__ ⋯ _ ⋯__⋯⋯⋯printf( ″%dn″,sizeof(aa));的出是 ( )A).32B).36C).12D).818、数据 -54.78 在文本文件中占用的字个数是()A).4B).5C).6D).819、在宏定 #define p(r) 3.14*r中,宏名是 ()A).p B). p(r)C). 3.14*r D).p(r) 3.14*r20、要翻开一个已存在的用于改正的非空二制文件“ hello.txt ”,正确句是 ( )A). fp=fopen( "hello.txt ","r" )B). fp=fopen( "hello.txt ","ab+" )C). fp=fopen( "hello.txt ","w" )D). fp=fopen( "hello.txt ","r+" )效得分卷人无二、填空 ( 仔每小的明和源代,并将正确答案写到答上的号。
大学《C语言程序设计》期末考试试卷及参考答案

大学《C语言程序设计》期末考试试卷及参考答案《C语言程序设计》期末考试试卷参考答案一、判断题(10分)1、对2、对3、错4、错5、对6、错7、错8、错9、错10、错二、填空题(30分,,1到10题1分1空,10到18题2分1空)1.2.5 2. a!=0&&b!=0 3. m=1b 4. windows 95 5. x[i]>='A'&&x[i]<='Z' 6.234567 7.文件的首纪录前8、struct tree *Ltree,*Rtree 9. i<=10010. char a[10]="continue"; 11. p*pow(1+r,5) 12. 'D' 13. 10、514.#define utol(ch) ch=ch>='A'&& ch<='Z' ? ch+'a'-'A':ch15.首行第i+1个元素的地址,第i+1行的首地址,a[0][0]的值16.p=(int*)mallo(n);17. (-b+sqrt(b*b-4*a*c))/2/a 18. float(*fg)(float **,int,int);三、单项选择题(在每小题的四个备选答案中选出一个正确的,10分))1、A2、B3、C4、B5、D6、A7、A8、B9、C 10、A四、程序阅读题(20分,每题4分)1、 A C E G2、 x=3 y=23、the two string are same:fthe two string are same:r4、 K=85、1《C语言程序设计》期末考试试卷及参考答案一、判断题(10分)1、C语言是一种结构化程序设计语言。
()2、在标准C中,整型变量与字符变量是可以通用的。
()3、在标准C中,“=”是判断两个数是否相等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四川师范大学计算机科学学院 2012~2013学年度第二学期期末考试C 语言程序设计试卷 试卷A答卷说明:1、本试卷共6页,答题纸3页,4个大题,35个小题,满分100分,120分钟完卷。
2、闭卷考试,所有的答案都必须写在答题纸上,判卷以答题纸上答案为准。
3、本试卷适用于2011级1、2、3班。
一、 单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
每小题1分,共20分) 1、 在C 语言中,下列标识符中合法的是( )A). -int B). in1_3 C). A_B!D D). const2、 不属于C 语言基本数据类型的是( )A). int B). union C). char D). unsigned3、 下面是对宏定义的描述。
不正确的是( )A). 宏不存在类型问题,宏名无类型,它的参数也无类型 B). 宏替换不占用运行时间C). 宏替换只是字符串的简单替代D). 宏替换时先检查类型,类型一致时才可以替换4、 C 语言中,″\\xfds ″在内存中占用的字节数是( )A).3 B).4 C).5 D).65、 设int x;则执行printf(″%x \n″,~x^x);的结果是( )A). ffffffff B). ff C). 0 D). 16、 对于while 语句,错误的说法是( )A).用条件控制循环体的执行次数 B).循环体至少要执行一次__________________学院__________级___________班 姓名_______________ 学号_______________………………………………(密)………………………………(封)………………………………(线)………………………………密 封 线 内 答 题 无 效C).循环体有可能一次也不执行D).循环体中可以包含若干条语句7、执行下列语句后输出的结果是( )int a=8,b=7,c=6;if(a<b)if(b>c){a=c;c=b;}printf("%d,%d,%d\n",a,b,c);A).6,7,7 B).6,7,8 C).8,7,6 D).8,7,88、设int a=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是( )A).9,19 B).9,20 C).10,19 D).10,209、设static char x[ ]=″12345″,y[ ]={′1′,′2′,′3′,′4′,′5′,′\0′};那么( )A).x数组的长度等于y数组的长度B).x数组的长度大于y数组的长度C).x数组的长度少于y数组的长度D).x数组与y数组的存储区域相同10、设int i,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( )for(i=0;i<3;i++)printf(″%d″,x[i][2-i]);A).147 B).159 C).357 D).36911、执行完下列语句后,n的值是( )int n;for (n=0 ; n<100 ; n=2*n+1);A).125 B).126 C).127 D).12812、有以下语句:int a=6;a+=a-=a*a;printf(“%d”,a);输出结果( )A).–132 B).–60 C). -24 D). 013、为了连接两个字符串s1与s2,应当使用( )A). strcat( s1,s2 ) B). strcpy( s1, s2 ) C). strlen( s1, s2 ) D). strcmp( s1, s2 )14、设int a,*p;则语句p=&a;中的运算符“&”的含义是( )A).位与运算 B).逻辑与运算C).取指针内容 D).取变量地址15、下面输出的结果为( )i nt a=13, b=64;printf(“%d\n”, !a || (b>>3) );A).13 B).64C).1 D).016、下列定义正确的是( )A).enum t={a,b}x; B). enum t{1,2}x; C). e num {′+′,′-′}x;D). enum t{a,b}x;17、设有定义:struct u{int a[4];float b[3]; char c[16];}aa;则printf(″%d \n″,sizeof(aa));的输出是( )A).32 B).36 C).12 D).818、 数据-54.78在文本文件中占用的字节个数是( )A).4 B).5 C).6 D).819、 在宏定义#define p(r) 3.14*r 中,请问宏名是( )A). p B). p(r) C). 3.14*r D). p(r) 3.14*r 20、 要打开一个已存在的用于修改的非空二进制文件“hello.txt ”,正确语句是( )A). fp=fopen( "hello.txt ","r" ) B). fp=fopen( "hello.txt ","ab+" ) C). fp=fopen( "hello.txt ","w" ) D). fp=fopen( "hello.txt ","r+" )二、填空题(仔细阅读每小题的说明和源代码,并将正确答案写到答题纸上对应的题号处。
每小题4分,共36分)1. 以下程序的功能是:从键盘上输入若干个学生的成绩, 统计并输出最高成绩和最低成绩,当输入负数时结束输入.请填空.21:22:2. 下面程序的功能是比较字符数组a 和字符数组b 中的两个字符串是否相等(比较对应字符,全部相同输出0,如果不同,返回第一个不相同的字符差值,并输出)。
__________________学院__________级___________班 姓名_______________ 学号_______________………………………………(密)………………………………(封)………………………………(线)………………………………密 封 线 内 答 题 无 效23:24:3. 就以下程序空缺的地方进行填空。
4.以下程序对一个3×3的矩阵进行行列互换。
25:26: 27:28:29:三、阅读下列程序,将输出结果写到答题纸上对应的题号处。
(本大题共4小题,每小题5分,共20分)__________________学院__________级___________班 姓名_______________ 学号_______________………………………………(密)………………………………(封)………………………………(线)………………………………密 封 线 内 答 题 无 效四、程序设计题,将源代码规范地书写在答题纸上(第34小题10分,第35小题各14分,共24分)。
34.设计函数实现将一个字符串中小写字母转化为大写字母。
35.计算!1!21!111n e +++=的值并输出(设n=20)。
四川师范大学计算机科学学院 2012~2013学年度第二学期期末考试C 语言程序设计试卷 试卷A参考答案与评分标准一、单项选择题:(每小题1分,共20分)二、填空题:(每空4分,共36分)21: x >= 0 22: x < amin23: int i=024: (a[i] == b[i]) && a[i] != '\0'25: ‘\0’ 26: *sptr++ 27: j < i 28: a[i][j] = a[j][i] 29: a[j][i] = temp三、阅读程序题:(每小题5分,共20分)30: 7 9 31: I am a qjh. 32:100,400,100,200 33:Gcd=12四、程序设计题:(第34小题10分,第35小题各14分,共24分) 34.设计函数实现将一个字符串中小写字母转化为大写字母。
(10分)#include <stdio.h> (1分) #include <ctype.h> (1分)/* 转换函数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计算!1!211!111n e +++=的值并输出(设n=20)。
(14分) #include <stdio.h> (1分)/* 递归函数5分 */long factorial(int n) (1分) { if (n == 1) return n; (2分) else return n * factorial(n-1); (2分) }/* 主函数8分,其中:变量定义正确2分,循环正确得2分,函数调用格式正确2分,输出正确2分*/void main( ){double e = 1.0;for (int i=1; i<=20; i++){e += 1/(double)factorial(i);}printf("%lf\n",e);}其它答案可根据情况酌情给分。