下面是范文网小编整理的VB语言程序设计在线作业_C答案3篇 vb语言程序设计在线作业2,以供参考。
VB语言程序设计在线作业_C答案1
一、单选题(共 15 道试题,共 75 分。)V 1.合法的C语言标识符是()。 C._a1 D./n
满分:5 分
2.有两个字符数组a、b,则以下正确的输入
语句是()。(a,b);B.“scanf(”“%s%s”“,a,b);” C.“scanf(”“%s%s”“,a,b);” D.“gets(”“a”“),gets(”“b”“);”
满分:5 分
3.若运行以下程序时,从键盘输入25,13,10回车,则输出结果为()。
main(){inta1,a2,a3;scanf(“%d%d%d”,a1,a2,a3);printf(“a1+a2+a3=%
dn”,a1+a2+a3);} +a2+a3=48 +a2+a3=25 +a2+a3=10 D.不确定值
满分:5 分
4.以下为一维整型数组a的正确说明是
()。(10);B.“intn=10,a[n];” C.“intn;scanf(”“%d”“,n);” D.“#defineSIZE10;inta[SIZE];inta[n];”
满分:5 分
5.以下能对二维数组a进行正确初始化的语句是()。
[2][]={{1,0,1},{5,2,3}};B.“inta[][3]={{1,2,3},{4,5,6}};” C.“inta[2][4]={{1,2,3},{4,5},{6}};” D.“inta[][3]={{1,0,1},{},{1,1}};”
满分:5 分
6.函数rewind(fp)的作用是:使文件位置
指针()。A.重新返回文件的开头 B.返回到前一个字符的位置
C.指向文件的末尾
d.自动移至下一个字符的位置
满分:5 分
7.以下叙述中不正确的是()
A.在C程序中,调用函数时,只能把实参的值传送给形参,形参的值不
能传送给实参
B.在C程序的函数中,最好使用全局变量 C.在C程序中,形参只是局限于所在函数 D.在C程序中,函数名的存储类别为外部
满分:5 分
8.以下程序段()。intx=1,y=4;printf(x B.输出:x=1 C.输出:y=1 D.输出:y=4 满分:5 分 9.下列四组选项中,均是不合法的用户标识符的选项是______。 _0do _A D._123tempINT 满分:5 分 10.已知字母A的ASCII码为(65)10,变量ch1为字符型,则执行语句 Ch1='A'+'6'-'3';后,ch1中的值为()。 C.一个不确定的值 满分:5 分 11.若x为float型变量,则以列程序段结果是()x=;printf(“%- ”,x); A.输出格式描述符的域宽度不够,不能输 出 B.输出为 C.输出为 D.输出为- 满分:5 分 (float)是()。A.双精度型表达式 B.一个整型表达式 C.一个函数调用 D.一个不合法的表达式 满分:5 分 ^052的结果是() 满分:5 分 14.若有定义:intx=7;floata=,b=;则表达式a+x%3*(int)(a+b)%2/4 的值是()。 满分:5 分 15.有下列语句和赋值语句:(1)charstr[]=”iamaboy.”(2)charstr [12]=”iamaboy.”(3)char*p=”iamaboy.”(4)p=”iamaboy.”下列说法正 确的是()A.只有(1)、(2)正确 B.只有(3)、(4)正确 C.只有(1)、(3)、(4)正确 d.只有(3)正确 满分:5 分 1c2c 3 D4d5b6a 7b8c9c 10a 11B12B13A14A15B 二、判断题(共 5 道试题,共 25 分。)V 1.声明语句int a[]={0};可以对 一维数组a进行正确初始化。 A.错误 B.正确 T满分:5 分 2.在c语言中,函数形参的存储类型是自 动类型的变量 A.错误 B.正确 F 满分:5 分 3.函数必须有返回值,否则不能使用函数 A.错误 B.正确 F 满分:5 分 4.已知int a[]={1,2,3,4},y,*p=&a[1];则执行语句y(*--p)++;变量y的值是3。 A.错误 B.正确 F 满分:5 分 语言fread()函数的功能是从文件fp中读取n个字符存入指定的内存 。A.错误 B.正确 T 满分:5 分 第一章 程序设计算法概述 一.选择题 (一)基本概念 1、一个C语言程序总是从()。 A、主过程开始执行 B、主 函数开始执行 C、子程序开始执行 d、主 程序开始执行 【答案】B 2、下面四个选项中,均是C语言关键字的选项是()。 A、auto enum include B、switch typedef continue C、signed union scanf d、if struct type 【答案】B 3、下面四个选项中,均是合法整型常量的选项是()。 A、160-0xffff 01B、-0xcdf 01a 0xe C、-01 986,012 0668 d、-0x48a 2e5 0x 【答案】A 4、以下不正确的C语言标识符是()。 A、int B、a_1_2 C、ab1exe d、_x 【答案】A 5、以下是正确的C语言标识符是()。 A、#define B、_123 C、%d d、n 【答案】B 6、下列四组选项中,均不是C语言关键字的选项是()。 A、define IF type B、getc Char printf C、include scanf case d、while go pow 【答案】A 7、下列不属于C语言关键字的是()。 A、default B、register C、enum d、external 【答案】D 8、合法的C语言标识符是()。 A、ab&c B、2ab C、_a1 d、/n 【答案】C 9、下列四组选项中,均是不合法的用户标识符的选项是______。 A、A P_0 do B、float goto _A C、b-a goto int d、_123 temp INT 【答案】C 二.填空题 1.在C语言中的实型变量分为两种类型,它们是 和。 【答案】单精度型(或float型) 双精度型(或:double型) 语言规定,可执行程序的开始执行点是。 【答案】程序中的main()函数 语言中三中基本的程序结构 是 、和。 【答案】顺序结构;分支(选择)结构;循 环结构 4.一个C源程序必须包含一个。 【答案】main函数 5.在C语言中,char型数据在内存中的存 储形式是。 【答案】ASCII码 6.用计算机实现算法的过程称 为。 【答案】程序设计 源程序的基本单位是。 【答案】函数 8.int型数据(2byte)可表示的数值范围 为。 【答案】-— 9.C语言的标识符只能由三种字符组成,它们是 【答案】字母、数字、下划线 三.判断题:(正确:T;错误:F) 1.在C程序中main函数必须位于程序的最 前面 【答案】F 语言本身没有输入输出语句 【答案】T 3.一个C源程序可由一个或多个函数组成 【答案】T 4.在C程序中,注释说明只能位于一条语 句的后面 【答案】F 四.简答-完善程序-分析程序 1、c语言程序的总体结构是怎样的。 【答案】 一个完整的c语言程序,是由一个、且只能由一个main()函数(又称主函数)和若 干个其他函数结合而成的,或仅由一个 main()函数构成。 2、c语言程序的基本单位是什么?它的结构 又如何? 【答案】 函数是c语言程序的基本模块单元。 任何函数(包括主函数main())都是由函数说明和函数体两部分组成。其一般结构如 下: [函数类型] 函数名(函数参数表) { 说明语句部分; 执行语句部分;} 3、主函数main()在程序中的地位如何。程序总是从哪个函数开始执行,到哪个函数执 行完后结束? 【答案】 main()函数的作用相当于其他高级语言中的主程序;其他函数的作用相当于子程序。 一个c语言程序,总是从main()函数开始执行,而不论其在程序中的位置。当主函数执行完毕时,亦即程序执行完毕。习惯上,将主函数main()放在最前头。 4、C语言用户标识符的定义方式是什么? 【答案】 C语言规定标识符只能由字母、数字和下划线3种字符组成,且第一个字符必须为字母或下划线,同时c语言还规定标识符不能为 C语言的关键字。 5、说明算法可以采用哪几种控制结构组合。 【答案】 算法的控制结构给出了算法的基本框架,不仅决定了算法中各操作的执行顺序,也直接反映了算法的设计是否符合结构化原则。一个算法一般可以用顺序、选择、循环三种基本控制结构,通过顺序或嵌套组合而成。 6、算法的基本特征是什么? 【答案】 一个算法,一般应具有以下几个基本特征。可行性、确定性、有穷性、一个输入、零个 或多个输出。 7、常见的过程设计工具有哪些?为什么可以N-S图代替传统的程序流程图? 【答案】 常见的过程设计工具有:程序流程图、N-S图、PAD图和HIPO图。为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图 称为N-S图。 8、“在源文件的一行上可以有多条预处理命令”是否正确,为什么? 【答案】 通常,预处理命令位于源文件的开头,也可以写在函数与函数之间;不能在一行上写多条预处理命令:宏名一般习惯用大写字母表示,以便与变量名相区别,但这并非规定,也可用小写字母。 五.程序设计题 1.已知三角形的三边长,求其面积。假设输入的三边能构成三角形,三角形的面积公式 为: Area=,其中S=(a+b+c)/2。 【参考答案】 #include “” main() { Float a,b,c,s,area; Printf(“请输入三角形的三边:”); scanf(“%f,%f,%f”,&a,&b,&c); s=(a+b+c)/; Area=sqrt(s*(s-a)*(s-b)*(s-c)); Printf(“三角形的三边为:%, %, %”,a,b,c); Prinft(“三角形的面积为:%”,area); } 2.编写程序读入3个双精度数,求它们的平均值,并保留此平均值小数点一位,对小数点后第二位进行四舍五入,并输出结果。 【参考答案】 #include “” mian() { double x,y,z; double aver; long temp; Printf(“n请输入三个双精度数:” scanf(“%lf%lf%lf”,&x,&y,&z); Aver=(x+y+z)/3; Temp=aver*10; Temp=(aver*10-temp)*2+temp; Aver=temp/;); Printf(“n平均值为:%.1lf”,aver); } 3.输入两个整数,求出它们的商数和余数并 进行输出。 【参考答案】 #include “” main() { int x,y; int shang ,yu; Printf(“n请输入两个整数:”); scanf(“%d%d”,&x,&y);” shang=x/y; yu=x%y; Printf(“%d%d的商为:%d,余数为%d”,x,y,shang,yu); } 第二章 数据类型、运算符与表达式 一.选择题 1、若num、a、b和c都是int型变量,则执行表达式num=(a=4,b=16,c=32)后num的值为()。 A、4B、16 C、32 C d、52 【答案】C 2、若有变量说明:int a=0,b=0,c=0;,以下符合C语言语法的赋值表达式是()。 A、a=9+b+c=a+9 B、a=9+b;c=a+9; C、a=(9+b,b++) d、a=9+b++=a+7 【答案】C 3、若有以下类型说明语句:char a;int b;float c;double d;则表达式a*b-2*d+c的结果类型为()。 A、float B、char C、int d、double 【答案】D 4、下面四个选项中,均是合法浮点数的选 项是()。 A、+1e+1 03e2 B、-.60 12e-4-8e5 C、123e +2e-1 d、- 【答案】B 5、下面四个选项中,均是合法转义字符的选项是()。 A、''' '' 'n' B、'' '17' '“' C、'18' 'f' 'xab' d、'' '101' 'xlf' 【答案】A 6、下面正确的字符常量是()。 A、'X17' B、'80' C、'' d、”n“ 【答案】C 7、下面四个选项中,均是正确的数值常量或字符常量的选项是()。 A、 0f '&' B、”a“ 1e1 '”' C、'3' 011 0xFF00 0a d、+001 0xabcd 2e2 50.【答案】D 8、已知字母A的ASCII码为(65)10,变量ch1为字符型,则执行语句ch1='A'+'6'-'3';后,ch1中的值为()。 A、D B、68 C、一个不确定的值 d、C 【答案】A 9、若有定义:int x=7;float a=,b=;则表达式a+x%3*(int)(a+b)%2/4的值是()。 A、2. B、2. C、3. d、 【答案】A 10、sizeof(float)是()。 A、双精度型表达式 B、一个整型表达式 C、一个函数调用 d、一个不合法的表达式 【答案】B 11、设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是()。 A、0~25 5B、0~ C、-~+ d、-256~+255 【答案】B 12、若有以下定义:int m=7,n=12;则能得到值为3的表达式是()。 A、n%=(m%=5) B、n%=(m-m%5) C、n%=m-m% 5D、(n%=m)-(m%=5) 【答案】D 13、若有说明:int a=1,b=2,c=3,d=4;则表达式a A、4B、C、D、1 【答案】D 14、putchar函数可以向终端输出一个()。 A、整型变量值 B、实型变量值 C、字符串 d、字符或字符型变量值 【答案】D 15、若运行以下程序时,从键盘输入25,13,10<回车>,则输出结果为()。 main() { int a1,a2,a3; scanf(“%d%d%d”,&a1,&a2,&a3); Printf(“a1+a2+a3=%dn”,a1+a2+a3); } A、a1+a2+a3=48 B、a1+a2+a3=25 B、a1+a2+a3=10 d、不确定值 【答案】D 16.若有定义int a=2,b=9,k;k=a+b++/a++;则k的值是() A、 B、7 C、6 d、8 【答案】C 17.标有/* */语句的输出结果为() int x=20; Printf(“%d,%o,%x”,x,x,x);/* */ A、20,20,20 B、20,24,14 C、20,14,24 d、20,024,14 【答案】B 18.若x为float型变量,则以列程序段结果 是()。 x=; Printf(“%-”,x); A、输出格式描述符的域宽度不够,不能输出 B、输出为 C、输出为 d、输出为- 【答案】B 19.下列语句中,符合语法的语句式()。 A、a+b=3 B、a=7 C、a=c+b+3=6; d、a=8,b=a+7; 【答案】D 语言中,逻辑“真”等价于()。 A、大于零的数 B、大于零的整数 C、非零的数 d、非零的整数 【答案】C 21.已知字母a的ASC||的十进制代码为97,则执行下列语句后输出为()。 Char a=?a?; A--; Printf(“%d,%cn”,a+?2?-?0?,a+?3?-?0?); A、a,c B、a—运算不合法,故有语法错误 C、98,c d、)格式描述和输出项不匹配,输出无定值 【答案】C 22.对于条件表达式(M)?(a++):(a--),其中的表达式M等价于()。 A、M= =0 B、M= =1 C、M!=0 d、M!=1 【答案】C 23.在x值处于-2到2,4到8时值为“真”,否则为“假”的表达式是()。 A、(2>x>-2)||(4>x>8) B、((x<=-2)||(x>=2)||((x>4)||(x>=8)) C、(x<2)&&(x>=-2)&&(x>4)&&(x<8) d、(x>-2)&&(x>4)||(x<8)&&(x<2) 【答案】D 24.定义a为整型,下列表达式a=3>6的运行后,a的值为()。 A、0 B、1 C、3 d、表达式错误 【答案】A 25.若使用下述程序段将整数12和浮点数分别赋给变量a和b,那么输入应该式 ()。 int a;float b; scanf(“a=%d,b=%f”,&a,&b); A、12 B、a=12, b= C、12, d、a=12 B= 【答案】B 26.以下程序段()。 int x=1,y=4; Printf(x A、输出控制格式错误 B、输出:x=1 C、输出:y=1 d、输出:y=4 【答案】C 27.下面程序的输出是()。 main() { int x=10,y=3; Printf(“%dn”,y=x%y); } A、0 B、1 C、3 d、不 确定的值 【答案】B 二.填空题 1.若有定义int m=5,y=2;,则执行表达式y+=y-=m*=y后y的值是____ __。 【答案】-能表达“10 【答案】x>10&&x>200||x<0 3.表达整型变量a能被3整除但不被5整除的表达式是____ __。 【答案】a%3==0&&a%5!=0 4.C语言中唯一的三元运算符是。 【答案】? 5.设有:int a=1,b=2,c=3,则!(a>b)&&!c|| 1的值为。 【答案】1 6. Sizeof(float)是。 【答案】一个整型表达式 7.当m=2,n=1,a=1,b=2,c=3时,执行完d =(m=a!=b)&&(n=b>c)后;n的值为 ,m的值为。 【答案】0 1 8.设I,J和K是int型变量,且I=3,J=4,K=5,则表达式!((I 是。 【答案】0 9.判断char型变量c1是否为小写字母的正确表达式为。 【答案】(c1>= ’a’)&&(c1<= ’z’) 10.若a=5,b=2,c=1,则表达式a-b 【答案】0 11.若a是int型变量,且a的初值是6,则计算表达式a+=a-=a*a后a的值__ ____。 【答案】-60 12.假设x=5,y=6,则表达式x++*++y的值为 ______。 【答案】35 13.x2/(3x+5)的C表达式为。 【答案】x*x/(3*x+5) 14.若有说明:int m=5,y=2;则执行表达式y+=y-+m*=y后的y值是 【答案】y=-16 15.在C语言中,表示逻辑“真”值用 【答案】非0数字 16.若w=1,x=2,y=3,z=4,则条件表达式w 【答案】1 17.若a是int型变量,则计算表达式a = 25/3%3后a的值为。 【答案】 2 18.C语言提供的三种逻辑运算符是 、和。 【答案】 && ||! 19.设ch是char类型变量,其值是A,则 表达式ch=(ch>='A'&&ch<='Z')?(ch+32):ch的值 是。 【答案】 a 20.若有定义:int a=8,b=5,c;,执行语句c=a/b+;后,c的值为。 【答案】 2 21.设a=3,b=4,表达式a>b?b:a的值 是。 【答案】 3 22.表达式(int)*3的值为。 【答案】9 23.标有/* */语句的输出结果为。 int x=20; Printf(“%d,%o,%x”,x,x,x);/* */ 【答案】20,24,14 24.如果x、i、j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为 ______。 【答案】32 三.判断题:(正确:T;错误:F) 1.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实 型数值 【答案】F 2.在C程序中,逗号运算符的优先级最低 【答案】T 3.在C程序中,APA和apa是两个不同的变量 【答案】T 4.如果a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值 保持不变。 【答案】T 5.在C程序中,%是只能用于整数运算的运算符。 【答案】T 6.代数式2lnxcosx/3x,正确的c语言表达式是2*log(x)*cos(x)/(3*x) 【答案】T 7.sizeof(float)是一个整型表达式 【答案】T 8.有变量说明:int a=0,b=0,c=0;则表达式a=9+b++=a+7是符合c语言语法的赋值表达 式。 【答案】F 四.简答-完善程序-分析程序 1、c语言中不同数据类型的数据在运算是采用的规则是什么? 【答案】 C语言中,各类数值型数据在进行混合运算时,不同类型的数据要先转换成同一类型,然后进行运算。转换的规则为:总是转换为精度更大的数据类型,字符数据转换为整数,short型转为int型,float型数据在运算时转换成双精度型,以提高运算精度。 2、字符(char)型数据在微机内存中以什么形 式存储? 【答案】 将一个字符常量放到一个字符变量中,实际上并不是把该字符本身放到内存单元中去,而是将该字符的ASCII码值放到存储单元 中。 3、数据处理的最小单位是什么? 【答案】 数据处理的最小单位是数据项;由若干数据项组成数据元素;而数据是指能够被计算机识别、存储和加工处理的信息载体;数据结构是指数据之间的相互关系和数据运算。 4、若变量a是int类型,分析在执行了语句:a='A'+;后a的值多少? 【答案】 在赋值表达式中,赋值符右边的值的类型会自动转换成赋值符左边的变量的类型。在本题中,先用“A”的ASCII码(65)值加上得到,将其强制转换成int型,实数的小数部分全部清除保留证书部分。所 以a的值为66。 5、c语言的基本类型数据有哪几种? 【答案】 [signed]char;unsigned char;[signed]short[int];unsigned short[int];[signed]long[int];unsigned long[int];float; double. 6、分析下面程序的执行过程,给出输出结 果。 main() { int a=5,b=4,c=6,d; Printf(“%d\n”,d=a>c?(a>c?a:c):(b)); } 【答案】 本题最重要的语句在于d=a>c?(a>c?a:c):(b)),首先运算括号内的式子a>c?a:c,它的值是c的值6,即式子化成d=a>c?6:4。显然a=c,所以将4赋给d。 7、分析下面程序的执行过程,给出输出结 果。 main() { int a=4,b=8,c; C=(“b==a)&&(a+b!=20); Printf(”%d,%d,%d\n",a,b,c); } 【答案】 如果在表达中出现多种运算符时,一定要按照他们的优先级别进行运算,否则其结果可能会产生错误。本题中,由于赋值表达中式c=(a/b==a)&&(a+b!=20)中有两个括号,而且两个括号是进行逻辑与运算。当第1个括号内的值为假时,不管后面括号内的值是否为假,两个括号内的值进行逻辑与(&&)运算时,其结果肯定为假。所以结果为:4,8,0 第三章 程序控制结构 一.选择题 1.对下面的程序说法正确的是(main() {int x+3,y=0,z=0; if(x=y+z) Printf(“****”); else)。 Printf(“####”); } A、有语法错误,不能通过编译 输出为**** C、输出为# # # # 通过编译,但是不能运行 【答案】C 2.程序的结果为() main() { int a=3,b=4,t=1; if(a>b) B、D、 C语言程序设计 1.完成一个大小写字母自动转换的程序,输入大写字母,程序可以输出小写字母,sum+=i;i++; }while(i<=100);输入小写字母,可以输出大写字母 #include <> int main(){ char str[10];int i=0;gets(str);while(str[i]){ if(str[i]>='a'&&str[i]<='z')str[i]=str[i]-32;else if(str[i]>='A'&&str[i]<='Z')str[i]=str[i]+32;i++;} puts(str);return 0;} 2.用三种循环方式实现1-100的和计算(提示:do...while, while,for)do while循环: #include<> int main(){ int i = 1;int sum = 0;do{ Printf(“sum=%d”,sum);printf(“n”);} while循环: #include<> int main(){ int i = 1;int sum = 0;while(i<=100){ sum+=i;i++;} Printf(“sum=%d”,sum);printf(“n”);} For循环: #include <> int main(){ int i,sum; For(i = 1, sum = 0;i<=100;i++){ sum+=i;} printf(“sum=%d”,sum);printf(“n”);} 3.说说数组和指针的区别 1、指针的本质是一个与地址相关的复合类型,它的值是数据存放的位置(地址);数组的本质则是一系列的变量。 2、数组名对应着(而不是指向)一块内存,其地址与容量在生命期内保持不变,只有数组的内容可以改变。指针可以随时指向任意类型的内存块,它的特征是“可变”,所以我们常用指针来操作动态内存。 3、当数组作为函数的参数进行传递时,该数组自动退化为同类型的指针。数组名可以当作一个指针来用,数组名可以用*取其中的值,指针也可以用[]解引用,但它们还是有一些区别 指针可以随时指向任意类型的内存块,它的特征是“可变”,所以我们常用指针来操作动态内存。指针远比数组灵活,但也更危险。 4.用指针实现一个字符串输入,然后把输入字符串倒序输出的程序 #include<> #include<> void main(){ char str[100],*p;int len;printf(“输入一个字符串!n”);gets(str); len=strlen(str);p=str+len-1; Printf(“n变化后得:n”);while(p>=str){ Printf(“%c”,*p); P--;} Printf(“bn”);} C语言程序设计大作业 编写程序,实现单链表的插入、删除、输出、查找、统计以及销毁功能。 单链表的每个结点存储一名学生的信息,包括:学号、姓名、性别、年龄、三门课程(高数、英语、C语言)的成绩、三门功课的平均分。 结构体类型声明如下: typedef struct student { Char sno[8]; Char name[20]; Char sex; int age;double score[3];double avg; struct student *next;} STUDENT, *PSTUDENT; 要求: ⑴一律使用 STUDENT 声明学生结构体的变量,一律使用 PSTUDENT 声明指向学生结构体的指针变量 ⑵程序运行过程中要有菜单提示,菜单如下: *************************************************************** * a student * * a student * * the link list * * excellent students * * a student by the name * * the average score of three courses * * the program * *************************************************************** “Insert a student”:插入一个学生记录,要求按平均分从高到低插入 “Delete a student”:删除指定学号的学生 “Display the link list”:输出单链表中所有学生的信息 “Display excellent students”:输出链表中三门功课平均成绩高于85分(含85分)的学生信息 “Search a student by the name”:根据输入的姓名,输出链表中相应学生的信息 “Display the average score of three courses”:输出链表中所有学生的高数平均分、英语平均分以及C语言平均分 “Exit the program”:销毁单链表,结束程序运行 VB语言程序设计在线作业_C答案3篇 vb语言程序设计在线作业2相关文章: ★ 《JavaScript高级程序设计(第3版)》读后感(javascript高级程序设计第3版书本) ★ Python语言程序设计实验报告 python程序设计实验报告总结VB语言程序设计在线作业_C答案2
VB语言程序设计在线作业_C答案3