欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【计算机类职业资格】福建省二级C语言-1 (1)及答案解析.doc

    • 资源ID:1336082       资源大小:76.50KB        全文页数:15页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】福建省二级C语言-1 (1)及答案解析.doc

    1、福建省二级 C 语言-1 (1)及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:20,分数:40.00)1.一个 C 语言源程序中,main 函数的位置_。(分数:2.00)A.必须在最开始B.必须在自定义函数的前面C.可以放在某一用户函数定义之前,也可以放在某一用户函数定义之后D.必须在自定义函数的后面2.在 C 语言中,不正确的浮点型常量是_。(分数:2.00)A.-123e-3.0B.-.123C.-1.23e-1D.-0.1233.已定义 C 为字符型变量,则下列语句中,正确的是_。(分数:2.00)A.c=“97“B.c=“97“C.c=97D.c=“a“4

    2、.在 C 语言中,要求运算数必须是整型的运算符是_。(分数:2.00)A./B.%C.+D.*5.根据以下已有定义和数据的输入方式,输入语句的正确形式为_。 已定义:float x, y; 数据的输入方式:3.62 2.8(分数:2.00)A.scanf(“%f, %f“, B.scanf(“%f%f“, C.scanf(“%3.2f%2.1f“, D.scanf(“%3.2f, %2.1f“, 6.判断 char 型变量 c 是否为大写字母的正确表达式为_。(分数:2.00)A.“A“=c=“Z“B.(“A“=c)|(c=“Z“)C.(c=A) int a; float x; double

    3、y; ,则表达式 c*a+y-x 值的数据类型为_。(分数:2.00)A.doubleB.floatC.charD.int8.阅读以下程序,若从键盘输入 5,则正确的输出结果是_。 #includestdio.h int main() int x; scanf(“%d“, if(x-5) printf(“%d“, x); else printf(“%d“, x+); return 0; (分数:2.00)A.3B.4C.5D.69.以下程序运行结果是_。 #includestdio.h int main() int i, x=1; for(i=3; i0; i-) x=(x+1)*3; pri

    4、ntf(“%d/n“, x); return 0; (分数:2.00)A.9B.27C.66D.5410.在定义:int a10; 之后,对数组 a 元素引用正确的是_。(分数:2.00)A.a10B.a9+3C.a(7)D.a10-111.以下不能对二维数组 a 进行正确初始化的语句是_。(分数:2.00)A.int a3=1, 3, 5, 2, 4, 6;B.int a3=1, 3, 5, 0, 2, 4;C.int a23=2, 1, 3, 4, 6, 5;D.int a23=0;12.以下对 C 语言字符数组描述中,正确的是_。(分数:2.00)A.可使用 printf 函数实现字符数

    5、组中的字符串输出,遇到字符“/0“结束输出B.字符数组只能存放英文字母,而不能存放数字符号C.可用 len 函数计算字符数组中字符串的长度D.可通过赋值语句实现字符数组的整体赋值13.下列叙述正确的是_。(分数:2.00)A.在调用函数中对被调函数的声明是必不可少的B.函数可以返回一个值,但不能什么值都不返回C.声明函数时必须明确其参数类型和返回类型D.函数的定义和调用都不可以嵌套14.以下程序的运行结果是_。 #includestdio.h #define M 5 #define N 8 int main() printf(“%d/n“, M*N); return 0; (分数:2.00)A

    6、.8B.5C.40D.1315.若已定义:int*p, a; ,以下正确的语句是_。(分数:2.00)A.p=*a;B.a=p;C.a=*p;D.p=16.以下程序的运行结果是_。 #includestdio.h int main() char str=“JAVA“, *p; for(p=str+1; pstr+4; p+) printf(“%s/n“, p); return 0; A B C D (分数:2.00)A.B.C.D.17.在说明一个结构变量时系统分配给它的存储空间是_。(分数:2.00)A.该结构变量中第一个成员所需存储空间B.该结构变量中最后一个成员所需存储空间C.该结构变量

    7、中占用最大存储空间的成员所需存储空间D.该结构变量中所有成员所需存储空间的总和18.以下程序的运行结果是_。 #includestdio.h Struct St int n; float x; *p; int main() struct st arr5=10, 5.6, 12, 7.1, 14, 6.7, 16, 6.2, 18, 6.9; p=arr; printf(“%d/n“, +p-n); p+; printf(“%d, %.2f/n“, p-n, p-x); return 0 A B C D (分数:2.00)A.B.C.D.19.若有以下说明和定义: typedef int*INT

    8、EGER; INTEGER p, *q; 以下叙述中,正确的是_。(分数:2.00)A.p 是 int 型变量B.p 是基类型为 int 的指针变量C.q 是基类型为 int 的指针变量D.程序中可用 INTEGER 代替 int 类型名20.当已存在一个 abc.txt 文件时,执行函数 fopen(“abc.txt“, “r+“)的功能是_。(分数:2.00)A.打开 abc.txt 文件,清除原有的内容B.打开 abc.txt 文件,只能写入新的内容C.打开 abc.txt 文件,只能读取原有内容D.打开 abc.txt 文件,可以读取和写入新的内容二、程序填空题(总题数:1,分数:20

    9、.00)(在每对/*/之间填写内容,完成题目的要求)(分数:20.00)(1).以下程序用以实现:输入运算标志 m 和圆的半径 r,按照运算标志进行指定运算。 运算标志 运算 a 圆的面积 C 圆的周长 b 二者都计算 #includestdio.h #define PI 3.1415926 int main() /*/ 1/*/ m; float r, a, c; printf(“Input mark a or c or b and r:“); scanf(“%c %f“, if(m=“a“)|(m=“c“)|(m=“b“) printf(“area is %f/n“, a); else i

    10、f(/*/ 2/*/) c=2*PI*r; printf(“circle is %f/n“, c); else a=PI*r*r; c=2*PI*r; printf(“area is %f, circle is %f/n“, a, c); else printf(“Data are error!/n“); return 0; (分数:10.00)(2).以下程序用以统计从键盘输入字符串中所有字符个数 n 和元音字符个数 v。 #includestdio.h int main() char c; int n=0, v=0; /*/ 1/*/ switch(c=getchar() case“a“:

    11、case“A“: case“e“:case“E“: case“i“:case“I“: case“o“:case“O“: case“u“:case“U“: v+; /*/ 2/*/ n+; while(c!=“/n“); printf(“n=%d, v=%d/n“, n-1, v); return 0; (分数:10.00)三、程序改错题(总题数:1,分数:20.00)(修改每对/*/之间存在的错误,完成题目的要求)(分数:20.00)(1).以下程序用以查找字符串 sub 是否是字符串 str 的子串。若是,则输出 sub 在 str 中首次出现的下标,否则输出“Not Exist!”。 #i

    12、ncludestdio.h int main() char str100, sub80; int i, j, k, key=0; printf(“Enter a string:“); gets(str); printf(“/nEnter a sub string:“); gets(/*/ 1 for(i=0; stri!=“/0“; i+) for(j=i, k=0; subk!=“/0“ j+) k+; if(subk=“/0“) printf(“%d“, i); key=1; /*/ 3 continue/*/; if(key=0) printf(“Not Exist!/n“); retu

    13、rn 0; (分数:10.00)(2).以下程序中的 scut 函数实现截取字符串从第 m 个字符开始的 n 个字符。 #includestdio.h #includestring.h void scut(char str, int m, int n) /*/ 1 char p; str2100; /*/ int i=0; p=str+m-1; while(in) /*/ 2 str2i=*p+; /*/ str2i=“/0“; printf(“sub string is:%s/n“, str2); int main() char str1100; int m, n, len; printf(

    14、“Enter a string:“); gets(str1); printf(“/nEnter m, n:“); scanf(“%d, %d“, len=strlen(str1); if(m-1+nlen) printf(“Can“t run with %d and %d!/n“, m, n); else /*/ 3 scut(str1; m; n); /*/ return 0; (分数:10.00)四、编程题(总题数:1,分数:20.00)(补充每对/*/A 间的程序段,完成题目的要求)(分数:20.00)(1).程序中的 fun()函数用以完成如下数学表达式。 (分数:10.00)_(2)

    15、.编写程序中的 fun()函数,通过递归调用该函数计算以下表达式的值。 s=1+(1+2)+(1+2+3)+(1+2+3+4)+(1+2+n)#includestdio.h int fun(int n) /*/ /*/ int main() int i=1, n, sum=0; printf(“Please input a integer number:“); scanf(“%d“, while(i=n) sum=sum+fun(i); i+; printf(“s=%d/n“, sum); return 0; (分数:10.00)_福建省二级 C 语言-1 (1)答案解析(总分:100.00,

    16、做题时间:90 分钟)一、选择题(总题数:20,分数:40.00)1.一个 C 语言源程序中,main 函数的位置_。(分数:2.00)A.必须在最开始B.必须在自定义函数的前面C.可以放在某一用户函数定义之前,也可以放在某一用户函数定义之后 D.必须在自定义函数的后面解析:2.在 C 语言中,不正确的浮点型常量是_。(分数:2.00)A.-123e-3.0 B.-.123C.-1.23e-1D.-0.123解析:3.已定义 C 为字符型变量,则下列语句中,正确的是_。(分数:2.00)A.c=“97“B.c=“97“C.c=97 D.c=“a“解析:4.在 C 语言中,要求运算数必须是整型的

    17、运算符是_。(分数:2.00)A./B.% C.+D.*解析:5.根据以下已有定义和数据的输入方式,输入语句的正确形式为_。 已定义:float x, y; 数据的输入方式:3.62 2.8(分数:2.00)A.scanf(“%f, %f“, B.scanf(“%f%f“, C.scanf(“%3.2f%2.1f“, D.scanf(“%3.2f, %2.1f“, 解析:6.判断 char 型变量 c 是否为大写字母的正确表达式为_。(分数:2.00)A.“A“=c=“Z“B.(“A“=c)|(c=“Z“)C.(c=A) int a; float x; double y; ,则表达式 c*a+

    18、y-x 值的数据类型为_。(分数:2.00)A.double B.floatC.charD.int解析:8.阅读以下程序,若从键盘输入 5,则正确的输出结果是_。 #includestdio.h int main() int x; scanf(“%d“, if(x-5) printf(“%d“, x); else printf(“%d“, x+); return 0; (分数:2.00)A.3B.4 C.5D.6解析:9.以下程序运行结果是_。 #includestdio.h int main() int i, x=1; for(i=3; i0; i-) x=(x+1)*3; printf(“

    19、%d/n“, x); return 0; (分数:2.00)A.9B.27C.66 D.54解析:10.在定义:int a10; 之后,对数组 a 元素引用正确的是_。(分数:2.00)A.a10B.a9+3C.a(7)D.a10-1 解析:11.以下不能对二维数组 a 进行正确初始化的语句是_。(分数:2.00)A.int a3=1, 3, 5, 2, 4, 6;B.int a3=1, 3, 5, 0, 2, 4;C.int a23=2, 1, 3, 4, 6, 5; D.int a23=0;解析:12.以下对 C 语言字符数组描述中,正确的是_。(分数:2.00)A.可使用 printf

    20、函数实现字符数组中的字符串输出,遇到字符“/0“结束输出 B.字符数组只能存放英文字母,而不能存放数字符号C.可用 len 函数计算字符数组中字符串的长度D.可通过赋值语句实现字符数组的整体赋值解析:13.下列叙述正确的是_。(分数:2.00)A.在调用函数中对被调函数的声明是必不可少的B.函数可以返回一个值,但不能什么值都不返回C.声明函数时必须明确其参数类型和返回类型 D.函数的定义和调用都不可以嵌套解析:14.以下程序的运行结果是_。 #includestdio.h #define M 5 #define N 8 int main() printf(“%d/n“, M*N); retur

    21、n 0; (分数:2.00)A.8B.5C.40 D.13解析:15.若已定义:int*p, a; ,以下正确的语句是_。(分数:2.00)A.p=*a;B.a=p;C.a=*p;D.p= 解析:16.以下程序的运行结果是_。 #includestdio.h int main() char str=“JAVA“, *p; for(p=str+1; pstr+4; p+) printf(“%s/n“, p); return 0; A B C D (分数:2.00)A. B.C.D.解析:17.在说明一个结构变量时系统分配给它的存储空间是_。(分数:2.00)A.该结构变量中第一个成员所需存储空间

    22、B.该结构变量中最后一个成员所需存储空间C.该结构变量中占用最大存储空间的成员所需存储空间D.该结构变量中所有成员所需存储空间的总和 解析:18.以下程序的运行结果是_。 #includestdio.h Struct St int n; float x; *p; int main() struct st arr5=10, 5.6, 12, 7.1, 14, 6.7, 16, 6.2, 18, 6.9; p=arr; printf(“%d/n“, +p-n); p+; printf(“%d, %.2f/n“, p-n, p-x); return 0 A B C D (分数:2.00)A.B.C.

    23、 D.解析:19.若有以下说明和定义: typedef int*INTEGER; INTEGER p, *q; 以下叙述中,正确的是_。(分数:2.00)A.p 是 int 型变量B.p 是基类型为 int 的指针变量 C.q 是基类型为 int 的指针变量D.程序中可用 INTEGER 代替 int 类型名解析:20.当已存在一个 abc.txt 文件时,执行函数 fopen(“abc.txt“, “r+“)的功能是_。(分数:2.00)A.打开 abc.txt 文件,清除原有的内容B.打开 abc.txt 文件,只能写入新的内容C.打开 abc.txt 文件,只能读取原有内容D.打开 ab

    24、c.txt 文件,可以读取和写入新的内容 解析:二、程序填空题(总题数:1,分数:20.00)(在每对/*/之间填写内容,完成题目的要求)(分数:20.00)(1).以下程序用以实现:输入运算标志 m 和圆的半径 r,按照运算标志进行指定运算。 运算标志 运算 a 圆的面积 C 圆的周长 b 二者都计算 #includestdio.h #define PI 3.1415926 int main() /*/ 1/*/ m; float r, a, c; printf(“Input mark a or c or b and r:“); scanf(“%c %f“, if(m=“a“)|(m=“c“

    25、)|(m=“b“) printf(“area is %f/n“, a); else if(/*/ 2/*/) c=2*PI*r; printf(“circle is %f/n“, c); else a=PI*r*r; c=2*PI*r; printf(“area is %f, circle is %f/n“, a, c); else printf(“Data are error!/n“); return 0; (分数:10.00)解析:char m=“c“(2).以下程序用以统计从键盘输入字符串中所有字符个数 n 和元音字符个数 v。 #includestdio.h int main() ch

    26、ar c; int n=0, v=0; /*/ 1/*/ switch(c=getchar() case“a“:case“A“: case“e“:case“E“: case“i“:case“I“: case“o“:case“O“: case“u“:case“U“: v+; /*/ 2/*/ n+; while(c!=“/n“); printf(“n=%d, v=%d/n“, n-1, v); return 0; (分数:10.00)解析:do defauh:三、程序改错题(总题数:1,分数:20.00)(修改每对/*/之间存在的错误,完成题目的要求)(分数:20.00)(1).以下程序用以查找

    27、字符串 sub 是否是字符串 str 的子串。若是,则输出 sub 在 str 中首次出现的下标,否则输出“Not Exist!”。 #includestdio.h int main() char str100, sub80; int i, j, k, key=0; printf(“Enter a string:“); gets(str); printf(“/nEnter a sub string:“); gets(/*/ 1 for(i=0; stri!=“/0“; i+) for(j=i, k=0; subk!=“/0“ j+) k+; if(subk=“/0“) printf(“%d“,

    28、 i); key=1; /*/ 3 continue/*/; if(key=0) printf(“Not Exist!/n“); return 0; (分数:10.00)解析:sub strj=subk break(2).以下程序中的 scut 函数实现截取字符串从第 m 个字符开始的 n 个字符。 #includestdio.h #includestring.h void scut(char str, int m, int n) /*/ 1 char p; str2100; /*/ int i=0; p=str+m-1; while(in) /*/ 2 str2i=*p+; /*/ str2

    29、i=“/0“; printf(“sub string is:%s/n“, str2); int main() char str1100; int m, n, len; printf(“Enter a string:“); gets(str1); printf(“/nEnter m, n:“); scanf(“%d, %d“, len=strlen(str1); if(m-1+nlen) printf(“Can“t run with %d and %d!/n“, m, n); else /*/ 3 scut(str1; m; n); /*/ return 0; (分数:10.00)解析:char

    30、*p, str2100; str2i+=*p+; scut(str1, m, n);四、编程题(总题数:1,分数:20.00)(补充每对/*/A 间的程序段,完成题目的要求)(分数:20.00)(1).程序中的 fun()函数用以完成如下数学表达式。 (分数:10.00)_正确答案:()解析:double y; if(x1) y=x; else if(x10) y=sqrt(2*x-1); else y=log(3*x); return y;(2).编写程序中的 fun()函数,通过递归调用该函数计算以下表达式的值。 s=1+(1+2)+(1+2+3)+(1+2+3+4)+(1+2+n)#includestdio.h int fun(int n) /*/ /*/ int main() int i=1, n, sum=0; printf(“Please input a integer number:“); scanf(“%d“, while(i=n) sum=sum+fun(i); i+; printf(“s=%d/n“, sum); return 0; (分数:10.00)_正确答案:()解析:int k; if(n=1) k=1; else k=n+fun(n-1); return k;


    注意事项

    本文(【计算机类职业资格】福建省二级C语言-1 (1)及答案解析.doc)为本站会员(deputyduring120)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开