第19卷 C语言-C语言卷6——if语句与选择结构的嵌套——江苏省计算机类——考纲百套卷

2026-06-30
| 2份
| 18页
| 5人阅读
| 0人下载

资源信息

学段 中职
学科 职教专业课
课程 C语言程序设计
教材版本 -
年级 -
章节 -
类型 题集-专项训练
知识点 C语言概述,结构体和共用体
使用场景 中职复习-中职高考
学年 2027-2028
地区(省份) 江苏省
地区(市) -
地区(区县) -
文件格式 ZIP
文件大小 92 KB
发布时间 2026-06-30
更新时间 2026-06-30
作者 xy06893
品牌系列 学易金卷·考纲百套卷
审核时间 2026-06-30
下载链接 https://m.zxxk.com/soft/58571353.html
价格 3.00储值(1储值=1元)
来源 学科网

内容正文:

编写说明:江苏省对口招生计算机类《考纲百套卷》,依据《江苏省计算机类专业综合理论考试大纲》编写。本专辑涵盖5门课程,第一部分是专业核心模块训练卷,第二部分为各门课程的综合训练卷。本专辑共98份试卷。 本试卷是第19卷为专业核心模块训练卷,按《C语言》中"C语言卷6——if语句与选择结构的嵌套"范围和要求编写。具体内容为:掌握if语句;理解选择结构的嵌套。 江苏省对口招生职业技能考试 C语言 试卷 (C语言卷6——if语句与选择结构的嵌套) 考试时间:90分钟 满分:100分 一、单项选择题(共20题,每题2分,共40分) 1. if语句的基本格式是( ) A.if 条件 then 语句 B.if(条件) 语句 C.if 条件: 语句 D.if (条件) then 语句 【答案】B 【解析】C语言if语句格式为if(条件) 语句。 2. 下列if语句语法正确的是( ) A.if x>0 { } B.if(x>0); { } C.if(x>0) { } D.if x>0 then { } 【答案】C 【解析】if语句条件必须放在括号中,if(x>0) { }语法正确。 3. if...else语句中,else子句在( )时执行 A.条件为真(非0) B.条件为假(0) C.任何时候都执行 D.条件不确定时执行 【答案】B 【解析】else子句在if条件为假(0)时执行。 4. 下列关于if语句,正确的是( ) A.if语句可以没有else子句 B.if语句必须包含else子句 C.if语句条件不能是表达式 D.if语句不能嵌套使用 【答案】A 【解析】if语句可以只有if部分,else子句是可选的。 5. 嵌套if语句中,else子句与( )匹配 A.最外层的if语句 B.最近的未匹配的if语句 C.第一个if语句 D.所有if语句 【答案】B 【解析】else子句与最近的未匹配的if语句匹配(就近原则)。 6. 下列能正确判断变量a为偶数的是( ) A.if(a/2==0) B.if(a%2==0) C.if(a//2==0) D.if(a mod 2==0) 【答案】B 【解析】a%2==0可以判断a是否为偶数。 7. 想要判断a介于1到100之间(含1和100),条件表达式正确的是( ) A.if(1<=a<=100) B.if(a>=1 && a<=100) C.if(a>=1 || a<=100) D.if(1<=a&&<=100) 【答案】B 【解析】判断a在1到100之间应使用逻辑与:a>=1 && a<=100。 8. if语句的条件表达式值为____时表示真 A.0 B.非0值 C.1 D.大于0的整数 【答案】B 【解析】C语言中非0值表示真,0表示假。 9. 下列程序段输出结果是( ) if(5>3) printf("A"); else printf("B"); A.A B.B C.AB D.编译错误 【答案】A 【解析】5>3为真(非0),执行printf("A"),输出A。 10. 下列关于条件判断,正确的是( ) A.if(1)表示条件永远为真 B.if(0)表示条件为真 C.if(x=5)是判断x是否等于5 D.if(x)只能判断x是否为正数 【答案】A 【解析】if(1)中1是非0值,条件永远为真。注意if(x=5)是赋值不是判断。 11. 下列与if(a>b) max=a; else max=b; 等价的是( ) A.max=(a>b)?a:b; B.max=(a>b)?b:a; C.max=a>b?a:b; D.以上都不对 【答案】A 【解析】条件表达式max=(a>b)?a:b;与if...else语句功能等价。 12. if语句中,若语句体包含多条语句,必须使用( ) A.圆括号() B.方括号[] C.花括号{} D.尖括号<> 【答案】C 【解析】if语句若要执行多条语句,必须用花括号{}构成复合语句。 13. 下列关于嵌套if,正确的是( ) A.嵌套if不能超过2层 B.嵌套if没有固定层数限制 C.嵌套if不能使用else子句 D.嵌套if只能写在else子句中 【答案】B 【解析】if语句可以任意层数嵌套,C语言没有固定限制。 14. 想要判断字符变量c是数字字符('0'~'9'),正确的是( ) A.if('0'<=c<='9') B.if(c>='0' && c<='9') C.if(c in '0'..'9') D.if(isdigit(c)) 【答案】B 【解析】判断c是否为数字字符应使用c>='0' && c<='9'。 15. 若想判断a等于b,应该用( ) A.a=b(赋值) B.a==b(关系等于) C.a===b(严格等于) D.a eq b 【答案】B 【解析】==是关系等于运算符,=是赋值运算符。 16. if(x)语句中,当x为____时条件为假 A.1 B.0 C.-1 D.所有非0值 【答案】B 【解析】C语言中0表示假,非0表示真。 17. 下列程序段执行后y的值是( ) int x=2,y=3; if(x>1) y=5; else y=10; A.2 B.3 C.5 D.10 【答案】C 【解析】x=2>1为真,执行y=5,y的值变为5。 18. 下列关于if...else配对,正确的是( ) A.else与最外层if配对 B.else与最近的未配对if配对 C.else可以任意配对 D.else必须有配对的花括号 【答案】B 【解析】else与最近的未配对if语句配对(就近原则)。 19. 下列能正确表示a不等于0的条件是( ) A.a=0 B.a==0 C.a!=0 D.a~=0 【答案】C 【解析】!=是不等于关系运算符。 20. 在C语言中,if语句的嵌套可以出现在( ) A.只能出现在if子句中 B.只能出现在else子句中 C.if子句和else子句中都可以 D.不能进行嵌套 【答案】C 【解析】if语句可以嵌套,嵌套可以出现在if子句或else子句中。 二、判断题(共10题,每题1分,共10分) 21. if语句的条件必须放在圆括号中( ) 【答案】√ 【解析】C语言if语句条件必须放在圆括号()中。 22. if语句可以没有else子句( ) 【答案】√ 【解析】else子句是可选的,if语句可以只有if部分。 23. else子句可以与任意一个if语句配对( ) 【答案】× 【解析】else遵循就近原则,与最近的未配对if配对。 24. C语言中,0表示假,非0表示真( ) 【答案】√ 【解析】C语言用0表示假,非0值表示真。 25. if(x=5)是判断x是否等于5( ) 【答案】× 【解析】if(x=5)是赋值操作(将5赋给x),不是判断。判断相等应使用==。 26. if语句若要执行多条语句,必须使用花括号构成复合语句( ) 【答案】√ 【解析】if后只有一条语句可以不加花括号,多条语句必须用花括号{}构成复合语句。 27. 嵌套if语句没有层数限制( ) 【答案】√ 【解析】if语句可以任意层数嵌套,C语言没有固定限制。 28. 条件表达式可以替代简单的if...else语句( ) 【答案】√ 【解析】简单的if...else语句可以用条件表达式替代。 29. if语句不能进行多级选择( ) 【答案】× 【解析】if语句可以通过嵌套实现多级选择,也可以用else if实现多分支。 30. 在if语句中,if和else后面都不能直接跟分号( ) 【答案】× 【解析】if(条件);是合法的,表示如果条件为真则执行空语句。 三、填空题(共10空,每空2分,共20分) 31. if语句的基本格式是:if(____) 语句。 【答案】条件(表达式) 【解析】if语句需要圆括号中的条件表达式。 32. if...else语句中,else子句在条件为____(填真或假)时执行。 【答案】假(0) 【解析】else子句在if条件为假(0)时执行。 33. C语言中,表示不等于的关系运算符是____。 【答案】!= 【解析】!=是不等于关系运算符。 34. 嵌套if语句中,else子句与最____(填内或外)的未配对if语句配对。 【答案】近 【解析】else配对遵循就近原则。 35. 若if语句后要执行多条语句,必须使用____将这些语句括起来。 【答案】花括号({}) 【解析】多条语句需要用花括号{}构成复合语句。 36. 判断整数a能否被3整除的条件是:a____3==0。 【答案】%(求余) 【解析】%是求余运算符,a%3==0表示a能被3整除。 37. 在C语言中,____值表示真,____值表示假。 【答案】非0、0 【解析】C语言中非0表示真,0表示假。 38. 条件表达式 条件?表达式1:表达式2 可以替代简单的____语句。 【答案】if...else 【解析】条件表达式功能上等价于简单的if...else语句。 39. 想要判断变量a大于0且不等于5,条件表达式为:a>0 ____ a!=5。 【答案】&&(逻辑与) 【解析】两个条件同时成立使用逻辑与&&连接。 40. if语句的嵌套可以出现在if子句和____子句中。 【答案】else 【解析】if嵌套可以出现在if子句和else子句中。 四、程序综合题(共3题,每题10分,共30分) 41. 程序阅读题:阅读下列程序,写出运行结果。 #include <stdio.h> int main() { int a=15,b=20,c=10; int max; if(a>b) { if(a>c) max=a; else max=c; } else { if(b>c) max=b; else max=c; } printf("max=%d ",max); return 0; } 【答案】max=20 【解析】 1.首先判断 a>b,15>20 不成立,执行 else 分支; 2.else 分支内判断 b>c,20>10 成立,将 b 赋值给 max; 3.最终 max=20,输出结果 max=20。 42. 程序填空题:以下程序根据成绩输出等级并统计各等级人数。请将①~④表示的内容填写完整。 #include <stdio.h> int main() { int score,a=0,b=0,c=0,d=0; scanf("%d",&score); if(①____) a++; else if(score>=80) b++; else if(②____) c++; else ③____; printf("A:%d B:%d C:%d D:%d ",④____); return 0; } 【答案】① score>=90 ② score>=60 ③ d++ ④ a,b,c,d 【解析】 ① 90 分及以上为 A 等级,分数满足条件则 A 类人数加 1; ② 60 分及以上为 C 等级,填写分数判断条件; ③ 低于 60 分为 D 等级,D 类人数自增 1; ④ 按照输出顺序依次输出 A、B、C、D 四个统计变量。 43. 文件prime.txt中存放一个正整数(位数≥4)。用削峰法删除2个数字,使新数为素数且尽可能大。请完善程序。 #include<stdio.h> #include<string.h> #include<stdlib.h> #include<math.h> #define DEL 2 int is_prime(int n); int max_prime(char strn[],int deln); int main() { char strn[30]; int result; FILE *fp=fopen("prime.txt","r"); fscanf(fp,"%s",strn); fclose(fp); result=max_prime(strn,DEL); if(result>0)printf("最大素数:%d ",result); else printf("不存在"); return 0; } int is_prime(int n) { int i; if(n<2)return 0; for(i=2;i<=sqrt(n);i++) if(①)return 0; return 1; } int max_prime(char strn[],int deln) { int lenth=strlen(strn); int i,k,dn,maxp=-1,num; for(dn=1;dn<=deln;dn++) { i=0; while(strn[i]<=strn[i+1]&&i<lenth-dn) i++; for(k=i;k<lenth-dn;k++) ②; } num=0; for(k=0;k<lenth-deln;k++) num=num*10+strn[k]-'0'; if(③&&num>maxp)maxp=num; return maxp; } 【答案】① n% i==0 ② strn [k]=strn [k+1] ③ is_prime (num) 【解析】 ① 判断素数:如果 n 能被 i 整除,说明不是素数,返回 0; ② 将后一位字符向前覆盖,实现删除指定位置数字的功能; ③ 调用函数判断数字是否为素数,满足条件则更新最大值。 学科网(北京)股份有限公司 $ 编写说明:江苏省对口招生计算机类《考纲百套卷》,依据《江苏省计算机类专业综合理论考试大纲》编写。本专辑涵盖5门课程,第一部分是专业核心模块训练卷,第二部分为各门课程的综合训练卷。本专辑共98份试卷。 本试卷是第19卷为专业核心模块训练卷,按《C语言》中"C语言卷6——if语句与选择结构的嵌套"范围和要求编写。具体内容为:掌握if语句;理解选择结构的嵌套。 江苏省对口招生职业技能考试 C语言 试卷 (C语言卷6——if语句与选择结构的嵌套) 考试时间:90分钟 满分:100分 一、单项选择题(共20题,每题2分,共40分) 1. if语句的基本格式是( ) A.if 条件 then 语句 B.if(条件) 语句 C.if 条件: 语句 D.if (条件) then 语句 2. 下列if语句语法正确的是( ) A.if x>0 { } B.if(x>0); { } C.if(x>0) { } D.if x>0 then { } 3. if...else语句中,else子句在( )时执行 A.条件为真(非0) B.条件为假(0) C.任何时候都执行 D.条件不确定时执行 4. 下列关于if语句,正确的是( ) A.if语句可以没有else子句 B.if语句必须包含else子句 C.if语句条件不能是表达式 D.if语句不能嵌套使用 5. 嵌套if语句中,else子句与( )匹配 A.最外层的if语句 B.最近的未匹配的if语句 C.第一个if语句 D.所有if语句 6. 下列能正确判断变量a为偶数的是( ) A.if(a/2==0) B.if(a%2==0) C.if(a//2==0) D.if(a mod 2==0) 7. 想要判断a介于1到100之间(含1和100),条件表达式正确的是( ) A.if(1<=a<=100) B.if(a>=1 && a<=100) C.if(a>=1 || a<=100) D.if(1<=a&&<=100) 8. if语句的条件表达式值为____时表示真 A.0 B.非0值 C.1 D.大于0的整数 9. 下列程序段输出结果是( ) if(5>3) printf("A"); else printf("B"); A.A B.B C.AB D.编译错误 10. 下列关于条件判断,正确的是( ) A.if(1)表示条件永远为真 B.if(0)表示条件为真 C.if(x=5)是判断x是否等于5 D.if(x)只能判断x是否为正数 11. 下列与if(a>b) max=a; else max=b; 等价的是( ) A.max=(a>b)?a:b; B.max=(a>b)?b:a; C.max=a>b?a:b; D.以上都不对 12. if语句中,若语句体包含多条语句,必须使用( ) A.圆括号() B.方括号[] C.花括号{} D.尖括号<> 13. 下列关于嵌套if,正确的是( ) A.嵌套if不能超过2层 B.嵌套if没有固定层数限制 C.嵌套if不能使用else子句 D.嵌套if只能写在else子句中 14. 想要判断字符变量c是数字字符('0'~'9'),正确的是( ) A.if('0'<=c<='9') B.if(c>='0' && c<='9') C.if(c in '0'..'9') D.if(isdigit(c)) 15. 若想判断a等于b,应该用( ) A.a=b(赋值) B.a==b(关系等于) C.a===b(严格等于) D.a eq b 16. if(x)语句中,当x为____时条件为假 A.1 B.0 C.-1 D.所有非0值 17. 下列程序段执行后y的值是( ) int x=2,y=3; if(x>1) y=5; else y=10; A.2 B.3 C.5 D.10 18. 下列关于if...else配对,正确的是( ) A.else与最外层if配对 B.else与最近的未配对if配对 C.else可以任意配对 D.else必须有配对的花括号 19. 下列能正确表示a不等于0的条件是( ) A.a=0 B.a==0 C.a!=0 D.a~=0 20. 在C语言中,if语句的嵌套可以出现在( ) A.只能出现在if子句中 B.只能出现在else子句中 C.if子句和else子句中都可以 D.不能进行嵌套 二、判断题(共10题,每题1分,共10分) 21. if语句的条件必须放在圆括号中( ) 22. if语句可以没有else子句( ) 23. else子句可以与任意一个if语句配对( ) 24. C语言中,0表示假,非0表示真( ) 25. if(x=5)是判断x是否等于5( ) 26. if语句若要执行多条语句,必须使用花括号构成复合语句( ) 27. 嵌套if语句没有层数限制( ) 28. 条件表达式可以替代简单的if...else语句( ) 29. if语句不能进行多级选择( ) 30. 在if语句中,if和else后面都不能直接跟分号( ) 三、填空题(共10空,每空2分,共20分) 31. if语句的基本格式是:if(____) 语句。 32. if...else语句中,else子句在条件为____(填真或假)时执行。 33. C语言中,表示不等于的关系运算符是____。 34. 嵌套if语句中,else子句与最____(填内或外)的未配对if语句配对。 35. 若if语句后要执行多条语句,必须使用____将这些语句括起来。 36. 判断整数a能否被3整除的条件是:a____3==0。 37. 在C语言中,____值表示真,____值表示假。 38. 条件表达式 条件?表达式1:表达式2 可以替代简单的____语句。 39. 想要判断变量a大于0且不等于5,条件表达式为:a>0 ____ a!=5。 40. if语句的嵌套可以出现在if子句和____子句中。 四、程序综合题(共3题,每题10分,共30分) 41. 程序阅读题:阅读下列程序,写出运行结果。 #include <stdio.h> int main() { int a=15,b=20,c=10; int max; if(a>b) { if(a>c) max=a; else max=c; } else { if(b>c) max=b; else max=c; } printf("max=%d ",max); return 0; } 42. 程序填空题:以下程序根据成绩输出等级并统计各等级人数。请将①~④表示的内容填写完整。 #include <stdio.h> int main() { int score,a=0,b=0,c=0,d=0; scanf("%d",&score); if(①____) a++; else if(score>=80) b++; else if(②____) c++; else ③____; printf("A:%d B:%d C:%d D:%d ",④____); return 0; } 43.文件prime.txt中存放一个正整数(位数≥4)。用削峰法删除2个数字,使新数为素数且尽可能大。请完善程序。 #include<stdio.h> #include<string.h> #include<stdlib.h> #include<math.h> #define DEL 2 int is_prime(int n); int max_prime(char strn[],int deln); int main() { char strn[30]; int result; FILE *fp=fopen("prime.txt","r"); fscanf(fp,"%s",strn); fclose(fp); result=max_prime(strn,DEL); if(result>0)printf("最大素数:%d ",result); else printf("不存在"); return 0; } int is_prime(int n) { int i; if(n<2)return 0; for(i=2;i<=sqrt(n);i++) if(①)return 0; return 1; } int max_prime(char strn[],int deln) { int lenth=strlen(strn); int i,k,dn,maxp=-1,num; for(dn=1;dn<=deln;dn++) { i=0; while(strn[i]<=strn[i+1]&&i<lenth-dn) i++; for(k=i;k<lenth-dn;k++) ②; } num=0; for(k=0;k<lenth-deln;k++) num=num*10+strn[k]-'0'; if(③&&num>maxp)maxp=num; return maxp; } 学科网(北京)股份有限公司 $

资源预览图

第19卷 C语言-C语言卷6——if语句与选择结构的嵌套——江苏省计算机类——考纲百套卷
1
第19卷 C语言-C语言卷6——if语句与选择结构的嵌套——江苏省计算机类——考纲百套卷
2
第19卷 C语言-C语言卷6——if语句与选择结构的嵌套——江苏省计算机类——考纲百套卷
3
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。