《C程序设计》作业内容
北师大网网络教育 C 程序设计一(答案)
《C++程序设计》第一套作业及其答案说明:本套作业涵盖第1章——第4章所学的内容。
本套作业共有38道单选题,1道多选题,共41个答案,满分为100分,错一个答案扣除2.5分。
1、在一个C++程序中,main函数的位置(C)。
(A)必须在程序的开头(B)必须在程序的后面(C)可以在程序的任何地方(D)必须在其它函数中间2、C++程序中的语句必须以(B)结束。
(A)冒号(B)分号(C)空格(D)花括号3、在下列八进制整型常量的表示中,(B)是正确的。
(A)0a0 (B)015 (C)080 (D)0x104、在下列十六进制整型常量的表示中,(C)是错误的。
(A)0x11 (B)0xaf (C)0xg (D)0x1f5、下列正确的字符常量为(D)。
(A)“a”(B)“\0”(C)a (D)‘\101’6、在下列运算符中,(D)优先级最低。
(A)!(B)&& (C)!= (D)?:7、设i=1, j=2,则表达式i+++j的值为(C)。
(A)1 (B)2 (C)3 (D)48、已知i=0, j=1, k=2,则逻辑表达式++i || --j && ++k的值为(B)。
(A)0 (B)1 (C)2 (D)39、设a=1, b=2, c=3, d=4,则条件表达式a<b ? a : c<d ? c : d的值为(A)。
(A)1 (B)2 (C)3 (D)410、逗号表达式(x = 4 * 5, x * 5), x + 25的值为(D)。
(A)25 (B)20 (C)100 (D)4511、已知int i, x, y; 在下列选项中错误的是(C)。
(A)if(x && y) i++; (B)if(x = y) i--;(C)if(xy) i--; (D)if(x + y) i++;-1 x<012、设有函数关系为 y = 0 x=0 ,下面选项中能正确表示上述关系为(C)。
C语言程序设计课程作业_A
C语言程序设计课程作业_A一、单选题1.(4分)设有以下定义int k=7, x=12;,则能使值为3的表达式是()• A. x%=(k%=5)• B. x%=(k-k%5)• C. x%=k• D. (x%=k)-(k%=5)答案D解析C语言程序设计/数据类型与运算/整型算术表达式2.(4分)以下程序的输出结果是? #include main() { int x=020,y=0x20,z=20; printf('%d,%d,%d ', x,y,z); }• A. 20,20,20• B. 32,16,20• C. 16,32,20• D. 20,32,20答案C解析C语言程序设计/数据类型及运算3.(4分)C语言中while和do while循环的主要区别是( )• A. do-while的循环至少无条件执行一次• B. while循环控制条件比do-while的循环控制条件严格• C. do-while允许从外部转入到循环体内• D. do-while的循环体不能是复合语句答案A解析C语言程序设计/循环程序设计/while语句与do-while语句4.(4分)执行语句scanf('%d,%d',&m,&n);使m和n的值分别为1和2,正确输入是( )• A. 1• B. 1 2• C. 1,2• D. 12,2答案C解析C语言程序设计/顺序程序设计/整型数据的格式输入5.(4分)sizeof(float)是( )• A. 一个双精度型表达式• B. 一个整型表达式• C. 一种函数调用• D. 一个不合法的表达式答案B解析C语言程序设计/数据类型与运算/实型变量存储6.(4分)下列选项中,不合法的C语言关键字是• A. auto• B. default• C. static• D. var答案D解析C语言程序设计/C语言概述7.(4分)下面程序的运行结果是( )#include main(){int a[6],i;for(i=1;i<6;i++){a[i]=9*(i-2+4*(i> 3))%5;printf('%2d',a[i]);}}• A. 4 0 4 0 4• B. -4 0 4 0 3• C. -4 0 4 4 3• D. -4 0 4 4 0答案C解析C语言程序设计/数组/二维数组与循环语句结合8.(4分)设有下面的程序段,char s[]='china'; char *p;p=s; 则下列正确的是( )• A. s和p完全相同• B. 数组s中的内容和指针变量p中的内容相等• C. s数组长度和p所指向的字符串长度相等• D. *p与s[0]相等答案D解析C语言程序设计/指针/数组与指针9.(4分)若已定义int a;下面对(1)(2)两个语句(1)int *p=&a; (2)*p=a;的正确解释是( )• A. 语句(1)和(2)中的*p含义相同,都表示给指针变量p赋值• B. (1)和(2)语句的执行结果,都是把变量a的地址赋给指针变量p• C. (1)在对p进行说明的同时进行初始化,使p指向a (2)将变量a的值赋给指针变量p• D. (1)在对p进行说明的同时进行初始化,使p指向a (2)将变量a的值赋给*p答案D解析C语言程序设计/指针/地址与指针10.(4分)下面四个选项中,均是不合法的用户标识符的选项是( )• A. A,P_0,do• B. float,la0,_A• C. b-a,goto,int• D. _123,temp,INT答案C解析C语言程序设计/数据类型与运算/标识符11.(4分)在C语言中,全局变量的隐含存储类别是• A. static• B. extern• C. void• D. register答案B解析C语言程序设计/函数12.(4分)若有以下定义:char s[10]='include',*p=s;则不能代表字符u的表达式是( )• A. s[4]• B. s+4• C. *(p+4)• D. p+=4,*p答案B解析C语言程序设计/指针/字符串指针的引用13.(4分)下面程序#include main(){int y=10;do {y--;}while(--y);printf('%d ',y--);}的运行结果是( )• A. 1• B. -1• C. 8• D. 0答案D解析C语言程序设计/循环程序设计/do-while语句14.(4分)a为0111,b为0123,a、b、c均为无符号短整型变量,则语句printf('%o,%o,%o,%o',c=~a,c= a&b,c=a|b,c=a∧b)的输出结果为( )• A. 177666,101,133,32• B. 0177666,0123,0333,032• C. 0177666,0101,0133,032• D. 177666,0123,0133,034答案A解析C语言程序设计/位运算/异或运算符15.(4分)有一个函数原型如下所示: abc(float x,double y); 则该函数的返回类型为• A. void• B. double• C. int• D. float答案C解析C语言程序设计/函数16.(4分)在ASCII码表中可以看到每个小写字母的ASCII码比它相应的大写字母的ASCII码( )• A. 大32• B. 大64• C. 小32• D. 小64答案A解析C语言程序设计/数据类型与运算/字符常数比较17.(4分)执行以下程序后的输出结果是( )int w=3,z=7,x=10;printf('%d',x>10?x+100:x-10);printf('% d',w++||z++);printf('%d',!w>z);printf('%d',w&&z);• A. 0111• B. 1111• C. 0101• D. 0100答案C解析C语言程序设计/选择结构程序设计/条件运算符18.(4分)程序的三种基本结构是( )• A. 顺序结构,循环结构,递归结构• B. 顺序结构,循环结构,选择结构• C. 选择结构,循环结构,递归结构• D. 顺序结构,选择结构,递归结构答案B解析C语言程序设计/选择程序设计/程序结构19.(4分)设整型变量a值为9,则下列表达式中使b的值不为4的表达式( )• A. b=a/2• B. b=a%2• C. b=8-(3,a-5)• D. b=a>5?4:2解析C语言程序设计/数据类型与运算/整型算术表达式20.(4分)已有定义int k=2;int *p1,*p2;且p1,p2均指向变量k,下面不能正确执行的赋值语句是( )• A. k=*p1+*p2• B. p2=k• C. p1=p2• D. k=*p1*(*p2)答案B解析C语言程序设计/指针/指针变量的定义21.(4分)若有以下定义int a[5]={1,2,3,4,5},*p,i;i=3;p=a;,则对数组元素地址的正确引用是( )• A. &p• B. a++• C. &(p+1)• D. &p[i]答案D解析C语言程序设计/指针/数组指针的引用二、判断1.(4分)用typedef可以创建新的基本类型••解析C语言程序设计/结构体与共用体2.(4分)在C 语言中,共用体类型属于构造类型••答案正确解析C语言程序设计/数据类型与运算/构造数据类型3.(4分)strcmp3(char *s,char *t){for (;*t= =*s;){if (!*t) return 0; t++;s++;}return (*s-*t);}库函数strcmp(char*s,char*t)是功能相等的程序段••答案正确解析C语言程序设计/指针/指针作为函数参数4.(4分)C语言程序中,一个文件中的函数可以引用另一个文件中的函数和变量••答案正确解析C语言程序设计/文件一、单选题1.(4分)在C语言中,反斜杠符是( )• A. \n• B. \t• C. \v• D. \\答案D解析C语言程序设计/数据类型与运算/字符常数表示形式2.(4分)执行下列程序段后, int x=10,y=9;int a,b,c;a=(--x= =y++)?--x:++y;b=x++;c=y; 变量a,b, c的值分别是( )• A. a=9,b=9,c=9• B. a=8,b=8,c=10• C. a=9,b=10,c=9• D. a=8,b=8,c=9答案B解析C语言程序设计/选择结构程序设计/条件与算术运算符3.(4分)判断char型变量c1是否小写字母的正确表达式为• A. 'a'<=c1<='z'• B. (c1>='a')&&(c1<='z')• C. (c1>=a)&&(c1<=z)• D. ('a'<=c1)||('z'>=c1)答案B解析C语言程序设计/数据类型及运算4.(4分)阅读以下程序,int w=1,x=2,y=3,z=4,m;m=w• A. 1• B. 2• C. 3• D. 4答案A解析C语言程序设计/选择结构程序设计/条件运算符嵌套5.(4分)在C语言中运算符的优先级从高到低的排列顺序是• A. 关系运算符算术运算符赋值运算符• B. 算术运算符赋值运算符关系运算符• C. 赋值运算符关系运算符算术运算符• D. 算术运算符关系运算符赋值运算符答案D解析C语言程序设计/数据类型及运算6.(4分)若有以下定义, int k=7,x=12, 则能使值为3的表达式是( )• A. x%=k%=5• B. x%=k-k%5• C. x%=(k-k%5)• D. (x%=k)-(k%=5)答案D解析C语言程序设计/数据类型与运算/算术表达式7.(4分)设有以下定义int k=7, x=12;,则能使值为3的表达式是()• A. x%=(k%=5)• B. x%=(k-k%5)• C. x%=k• D. (x%=k)-(k%=5)答案D解析C语言程序设计/数据类型与运算/整型算术表达式8.(4分)设有以下程序片段:char s[ ]='Program!';char *p;p=s;则执行完上面的程序段后,*(p+8)的值为( )• A. !'• B. '\0'• C. 'm'• D. 不定值答案B解析C语言程序设计/指针/字符串指针的引用9.(4分)C语言中合法的字符常量是• A. ’\\’• B. ”H”• C. ’He’• D. p答案A解析C语言程序设计/数据类型及运算10.(4分)以下read函数的调用形式中,参数类型正确的是( )• A. read(int fd,char *buf,int count)• B. read(int *buf,int fd,int count)• C. read(int fd,int count,char *buf)• D. read(int count,char *buf,int fd)答案A解析C语言程序设计/文件/文件的读和写11.(4分)设有以下程序片段:char a[ ]='hello',*p;p=a;printf('%d',*(p+5));执行上面的程序片段后的结果为( )• A. 111• B. 0• C. 104• D. 不确定的值答案B解析C语言程序设计/指针/数组元素的引用12.(4分)以下程序main(){int x=10,y=10;printf('%d %d ',x--,--y);}的输出结果是( )• A. 10 10• B. 9 9• C. 9 10• D. 10 9答案D解析C语言程序设计/顺序程序设计/整型变量的输出格式和算术运算符13.(4分)以下函数的功能对应于int fun(char *s,char *t) { while (*s)&&(*t)&&(*t==*s)} { t++; s ++; } return(*s-*t); }• A. strlen(s)+strlen(t)• B. strcmp(s,t)• C. strcpy(s,t)• D. strcat(s,t)答案B解析C语言程序设计/循环控制14.(4分)C语言规定,函数返回值的类型是由( )所决定。
《C语言程序设计》形成性考核作业(1)解答
《C语言程序设计》作业1解答一、选择题1. 在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为( A )。
A. mainB. MAINC. nameD. function2. C语言源程序文件的缺省扩展名为( D )。
A. cppB. exeC. objD. C3. 由C语言目标文件连接而成的可执行文件的缺省扩展名为( B )。
A. cppB. exeC. objD. c4. 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用( D )符号作为分隔符。
A. 空格或逗号B. 逗号或回车C. 逗号或分号D. 空格或回车5. 每个C语言程序文件的编译错误分为( B )类。
A. 1B. 2C. 3D. 46. 设x和y均为逻辑值,则x && y为真的条件是( A )。
A. 它们均为真B. 其中一个为真C. 它们均为假D. 其中一个为假7. 设有语句“int a=12; a+=a*a; ”,则执行结束后,a的值为( C )。
A. 12B. 144C. 156D. 2888. x>0 && x<=10的相反表达式为( A )。
A. x<=0 || x>10B. x<=0 && x>10C. x<=0 || x<=10D. x>0 && x>109. 字符串“a+b=12\n”的长度为( B )。
A. 6B. 7C. 8D. 910. 在下列符号常量定义中,错误的定义语句格式为( C )。
A. const M1=10;B. const int M2=20;C. const M3 10;D. const char mark='3';11. 带有随机函数的表达表达式rand( )%20的值在( C )区间内。
A. 1~19B. 1~20C. 0~19D. 0~2012. 当处理特定问题时的循环次数已知时,通常采用( A )循环来解决。
地大《C语言程序设计(新)》在线作业一答案
地大《C语言程序设计(新)》在线作业一-0011试卷总分:100 得分:0一、单选题(共15 道试题,共60 分)1.以下选项中属于C语言的数据类型是()A.复数型B.逻辑型C.集合型D.双精度型正确答案:D2.以下函数的返回结果是( ). int function(char *x) { char *p=x; while(*p++); return(p-x-1); }A.求字符串的长度B.将字符串x连接到字符串p后面C.将字符串x复制到字符串pD.将字符串x反向存放正确答案:A3.C程序是由_____构成的A.主程序与子程序B.主函数与若干子函数C.一个主函数与一个其它函数D.主函数与子函数正确答案:B4.已知:int a,*p=&a;,则下列函数调用中错误的是______。
()A.scanf("%d",&a);B.scanf("%d",p);C.scanf("%d",*p);D.printf("%d",a);正确答案:C5.下面程序的结果是什么?Int i=3,j=4;i?i++:j++;printf(“%d %d\n”,i,j);A.3 3B.4 4C.3 4D.4 3正确答案:B6.下列符号中,合法的C标识符是__________.①#i ②a>b ③_ave ④a_comB.②③C.③④D.②正确答案:C7.设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值是__________.A.0B.1C.2D.3正确答案:C8.不合法的八进制数是()A.0B.028C.077D.01正确答案:B9.设有如下定义:int (*ptr) ();则以下叙述中正确的是______。
《C程序设计》作业参考答案(1-4章)
第1章C语言概述习题(P13):1.3 写出一个C程序的构成。
答:C程序由一个main函数和0个或多个自定义函数构成,每个函数的构成如下:函数类型函数名(函数参数列表){说明部分执行部分}1.4 C语言以函数为程序的基本单位,有什么好处?答:一个函数实现一个相对独立的功能,便于实现程序的模块化。
1.5 请参照本章例题,编写一个C程序,输出以下信息:*************************************************Very good!*************************************************答:参照例1.1编程如下# include <stdio.h>void main(){printf("********************************************\n");printf(" Very good!\n");printf("********************************************\n");}1.6 编写一个C程序,输入a、b、c 3个值,输出其中最大者。
答:参照例1.3编程如下法一:修改例1.3的主函数,自定义max函数不变。
# include <stdio.h>void main(){int max(int x,int y); /*函数声明*/int a,b,c,m; /*定义4个变量,m用于存放最大值*/scanf("%d%d%d",&a,&b,&c);/*从键盘上输入3个整数*/m=max(a,b); /*第一次调用max函数求出前两个数的最大值放在m中*/m=max(m,c); /*再调max函数求出m和第三个数的最大数*/printf("max is %d\n",m); /*输出结果*/}int max(int x,int y) /*定义求两个数的最大数的函数max */{int z;if(x>y) z=x;else z=y;return(z);}法二:修改例1.3的主函数和max函数,将max函数改为求3个数的最大数。
北理工《C语言程序设计》在线作业含正确答案
B2,1,0
C1,2,1
D2,1,1
18、C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递方式是( )。
A地址传递
B值传递
C由实参传给形参,并由形参传回给实参
D由用户指定传递方式
19、在C语言的函数定义过程中,如果函数finA调用了函数funB,函数funB又调用了函数funA,则( )。
A、6385
B69825
C63825
D693825
6、已知:struct{int i; char c; float a; }test; 则sizeof(test)的值是( )。
A4
B5
C6
D7
7
2分
已知“int a=4,b=5,c;”,则执行表达式“c=a=a>b”后变量a的值为( )。
A1
B0
C4
C数据结构系统化
D控制流程结构化
4、C编译系统提供了对C程序的编辑、编译、连接和运行环境,以下可以不在该环境下进行的环节是( )。
A编辑和编译
B编译和连接
C连接和运行
D编辑和运行
5、以下程序的输出是( )。main(){char a[2][5]={“6937”,”8254”};int i,j,s=0;for(i=0;i<2;i++)for(j=0;a[i][j]>'0'&&a[i][j]<='9';j+=2)s=10*s+a[i][j]-‘0’;printf(“s=%d ”,s);}
Dscanf("%d%d%d",&a,&b,&c);
c程序设计课程设计作业
c程序设计课程设计作业一、教学目标本课程的教学目标是使学生掌握C程序设计的基本概念、语法和编程技巧,培养学生具备基本的程序设计能力和问题解决能力。
具体包括以下几个方面:1.知识目标:学生需要掌握C程序设计的基本语法、数据类型、运算符、控制结构、函数、数组、指针等基本概念,了解结构体、共用体、位字段等数据结构,以及文件操作、调试技巧等编程实践知识。
2.技能目标:学生需要能够运用C语言编写简单的程序,解决实际问题,具备基本的程序调试和优化能力。
3.情感态度价值观目标:培养学生对计算机科学的兴趣和热情,提高学生独立思考、创新意识和团队合作能力。
二、教学内容根据教学目标,本课程的教学内容主要包括以下几个部分:1.C语言基本语法和数据类型:变量、常量、数据类型、运算符、表达式等。
2.控制结构:顺序结构、选择结构、循环结构等。
3.函数:函数的定义和声明、参数传递、返回值、局部变量和全局变量等。
4.数组和指针:一维数组、多维数组、字符串、指针的概念和应用等。
5.数据结构:结构体、共用体、位字段、链表、栈和队列等。
6.文件操作:文件的打开、关闭、读写、定位等操作。
7.编程实践:调试技巧、代码优化、算法分析等。
三、教学方法为了达到教学目标,本课程将采用以下几种教学方法:1.讲授法:通过讲解和演示,使学生掌握C语言的基本概念和语法。
2.案例分析法:通过分析实际案例,引导学生运用C语言解决实际问题。
3.实验法:安排上机实验,让学生动手编写程序,培养编程能力和实践能力。
4.讨论法:学生进行小组讨论,促进学生之间的交流与合作,提高学生的创新意识和团队合作能力。
四、教学资源为了支持教学内容和教学方法的实施,本课程将采用以下教学资源:1.教材:《C程序设计语言》(K&R)、《C Primer Plus》等。
2.参考书:《C专家编程》、《C陷阱与缺陷》等。
3.多媒体资料:教学PPT、视频教程、在线课程等。
4.实验设备:计算机、编程环境(如Visual Studio、Code::Blocks等)、网络资源等。
国开作业《C语言程序设计-形考任务》 (3)
题目:在结构类型的定义中,不同数据成员的定义项之间采用的分隔符是()。
选项A:句点选项B:冒号选项C:分号选项D:逗号答案:分号题目:假定一个结构类型的定义为“struct A{int a,b; double c;};”,则该类型的长度为()。
选项A:8选项B:10选项C:12选项D:16答案:16题目:假定一个结构类型的定义为“struct D{int a; D* next;};”,则该类型的长度为()。
选项A:4选项B:8选项C:12选项D:16答案:8题目:假定要访问一个结构指针变量x中的数据成员a,则表示方法为()。
选项A:x.a选项B:x-a选项C:x(a)选项D:x{a}答案:x-a题目:与结构成员访问表达式等价的表达式为()。
选项A:x-name选项B:x-name选项C:(x)-name选项D:(*x)-name答案:(x)-name题目:假定有“struct BOOK{char title[40]; float price;}; struct BOOK book;”,则不正确的语句为()。
选项A:struct BOOK *x=malloc(book);选项B:struct BOOK x={"C++ Programming",27.0};选项C:struct BOOK *x=malloc(sizeof(struct BOOK));选项D:struct BOOK *x=book;答案:struct BOOK *x=malloc(book);题目:假定有“struct BOOK{char title[40]; float price;} b ook;”,则正确的语句为()。
选项A:struct BOOK x= book;选项B:struct BOOK *x=book;选项C:struct BOOK x=calloc(BOOK);选项D:struct BOOK *x=BOOK;答案:struct BOOK *x=book;题目:假定一个链表中结点的结构类型为“struct AA{int data, struct AA *next;};”,则next数据成员的类型为()。
《C语言程序的设计》大作业
南昌大学软件学院C语言程序设计工程实训大作业班级:09软件技术(2)班学号:8001509107姓名:吴承增指导老师:危建国2010年12月10日系统说明书1.问题描述:该程序包内容包括以下的模块,均用子函数完成:(1)主菜单(2)输入若干条记录并保存文件(指学生的信息)(3)学生信息录入、修改、删除、查询、存储。
(4)学生信息的浏览及排序(冒泡排序算法)。
(5)学生成绩的录入、修改。
(6)统计及格和优秀人数(7)退出系统2.程序设计和程序流程图:解决方案:主函数流程图:各部分功能的流程图:录入学生成绩流程图:统计功能流程图如图3所示:图3 统计模块流程图冒泡排序流程图:排序学生信息流程图:删除学生成绩信息流程图:3.系统的基本功能(主要数据和函数功能描述):char xh[15]; //以字符串数组形式存储学生学号char name[25]// 以字符串数组形式存储学生姓名char sex[5]; //性别float sxcj; //数学成绩float yycj; //英语成绩float Cyycj; //C语言成绩float ave; //平均成绩float sum; //总成绩#define N 4 //宏定义学生#define MAX 60 //学生最大个数int nCOUNT=0; //记录当前学生个数struct student //定义结构体学生int ScoreNew() //录入学生成绩int average() //求平均数int xsxscj() //显示输入学生信息、将学生打印到屏幕上int xsxsxx() //显示学生信息int xhcjpx() //按学生学号排序学生信息int sxcjpx()按数学成绩排序学生信息int yycjpx()按英语成绩排序学生信息int Cyypx() //按C语言成绩排序学生信息int zcjpx()按总成绩排序学生信息int pxxsxx()//排序学生信息int axhcx() //按学号查询int axmcx() //按姓名查询int SearchStud() //查询学生成绩信息int zjxsxx() //增加学生信息int xgxsxx() //修改学生信息int scxsxx() //删除学生信息int gxxscj() //更新学生信息int tjxscj() //统计学生成绩int save() //保存到文件((fp=fopen("stu_list.txt","wb"))==NULL) //以只读方式打开文件stu_list.txt (fwrite(&str[i],sizeof(struct student),1,fp)!=1) //创建文件并以二进制形式打开int xswj() //显示文件信息int main() //主函数mainmemu4.拟采用开发平台:Visual C++,Borland C++等。
C语言程序设计课程作业A
C语言程序设计课程作业_A一、单选题1.(4分)设有以下定义int k=7, x=12;,则能使值为3的表达式是()∙ A. x%=(k%=5)∙ B. x%=(k-k%5)∙ C. x%=k∙ D. (x%=k)-(k%=5)答案D解析C语言程序设计/数据类型与运算/整型算术表达式2.(4分)以下程序的输出结果是? #include main() { int x=020,y=0x20,z=20; printf('%d,%d,%d ', x,y,z); }∙ A. 20,20,20∙ B. 32,16,20∙ C. 16,32,20∙ D. 20,32,20答案C解析C语言程序设计/数据类型及运算3.(4分)C语言中while和do while循环的主要区别是( )∙ A. do-while的循环至少无条件执行一次∙ B. while循环控制条件比do-while的循环控制条件严格∙ C. do-while允许从外部转入到循环体内∙ D. do-while的循环体不能是复合语句答案A解析C语言程序设计/循环程序设计/while语句与do-while语句4.(4分)执行语句scanf('%d,%d',&m,&n);使m和n的值分别为1和2,正确输入是( ) ∙ A. 1∙ B. 1 2∙ C. 1,2∙ D. 12,2答案C解析C语言程序设计/顺序程序设计/整型数据的格式输入5.(4分)sizeof(float)是( )∙ A. 一个双精度型表达式∙ B. 一个整型表达式∙ C. 一种函数调用∙ D. 一个不合法的表达式答案B解析C语言程序设计/数据类型与运算/实型变量存储6.(4分)下列选项中,不合法的C语言关键字是∙ A. auto∙ B. default∙ C. static∙ D. var答案D解析C语言程序设计/C语言概述7.(4分)下面程序的运行结果是( )#include main(){int a[6],i;for(i=1;i<6;i++){a[i]=9*(i-2+4*(i> 3))%5;printf('%2d',a[i]);}}∙ A. 4 0 4 0 4∙ B. -4 0 4 0 3∙ C. -4 0 4 4 3∙ D. -4 0 4 4 0答案C解析C语言程序设计/数组/二维数组与循环语句结合8.(4分)设有下面的程序段,char s[]='china'; char *p;p=s; 则下列正确的是( )∙ A. s和p完全相同∙ B. 数组s中的内容和指针变量p中的内容相等∙ C. s数组长度和p所指向的字符串长度相等∙ D. *p与s[0]相等答案D解析C语言程序设计/指针/数组与指针9.(4分)若已定义int a;下面对(1)(2)两个语句(1)int *p=&a; (2)*p=a;的正确解释是( ) ∙ A. 语句(1)和(2)中的*p含义相同,都表示给指针变量p赋值∙ B. (1)和(2)语句的执行结果,都是把变量a的地址赋给指针变量p∙ C. (1)在对p进行说明的同时进行初始化,使p指向a (2)将变量a的值赋给指针变量p ∙ D. (1)在对p进行说明的同时进行初始化,使p指向a (2)将变量a的值赋给*p答案D解析C语言程序设计/指针/地址与指针10.(4分)下面四个选项中,均是不合法的用户标识符的选项是( )∙ A. A,P_0,do∙ B. float,la0,_A∙ C. b-a,goto,int∙ D. _123,temp,INT答案C解析C语言程序设计/数据类型与运算/标识符11.(4分)在C语言中,全局变量的隐含存储类别是∙ A. static∙ B. extern∙ C. void∙ D. register答案B解析C语言程序设计/函数12.(4分)若有以下定义:char s[10]='include',*p=s;则不能代表字符u的表达式是( )∙ A. s[4]∙ B. s+4∙ C. *(p+4)∙ D. p+=4,*p答案B解析C语言程序设计/指针/字符串指针的引用13.(4分)下面程序#include main(){int y=10;do {y--;}while(--y);printf('%d ',y--);}的运行结果是( ) ∙ A. 1∙ B. -1∙ C. 8∙ D. 0答案D解析C语言程序设计/循环程序设计/do-while语句14.(4分)a为0111,b为0123,a、b、c均为无符号短整型变量,则语句printf('%o,%o,%o,%o',c=~a,c= a&b,c=a|b,c=a∧b)的输出结果为( )∙ A. 177666,101,133,32∙ B. 0177666,0123,0333,032∙ C. 0177666,0101,0133,032∙ D. 177666,0123,0133,034答案A解析C语言程序设计/位运算/异或运算符15.(4分)有一个函数原型如下所示: abc(float x,double y); 则该函数的返回类型为∙ A. void∙ B. double∙ C. int∙ D. float答案C解析C语言程序设计/函数16.(4分)在ASCII码表中可以看到每个小写字母的ASCII码比它相应的大写字母的ASCII码( ) ∙ A. 大32∙ B. 大64∙ C. 小32∙ D. 小64答案A解析C语言程序设计/数据类型与运算/字符常数比较17.(4分)执行以下程序后的输出结果是( )int w=3,z=7,x=10;printf('%d',x>10?x+100:x-10);printf('% d',w++||z++);printf('%d',!w>z);printf('%d',w&&z);∙ A. 0111∙ B. 1111∙ C. 0101∙ D. 0100答案C解析C语言程序设计/选择结构程序设计/条件运算符18.(4分)程序的三种基本结构是( )∙ A. 顺序结构,循环结构,递归结构∙ B. 顺序结构,循环结构,选择结构∙ C. 选择结构,循环结构,递归结构∙ D. 顺序结构,选择结构,递归结构答案B解析C语言程序设计/选择程序设计/程序结构19.(4分)设整型变量a值为9,则下列表达式中使b的值不为4的表达式( )∙ A. b=a/2∙ B. b=a%2∙ C. b=8-(3,a-5)∙ D. b=a>5?4:2解析C语言程序设计/数据类型与运算/整型算术表达式20.(4分)已有定义int k=2;int *p1,*p2;且p1,p2均指向变量k,下面不能正确执行的赋值语句是( ) ∙ A. k=*p1+*p2∙ B. p2=k∙ C. p1=p2∙ D. k=*p1*(*p2)答案B解析C语言程序设计/指针/指针变量的定义21.(4分)若有以下定义int a[5]={1,2,3,4,5},*p,i;i=3;p=a;,则对数组元素地址的正确引用是( ) ∙ A. &p∙ B. a++∙ C. &(p+1)∙ D. &p[i]答案D解析C语言程序设计/指针/数组指针的引用二、判断1.(4分)用typedef可以创建新的基本类型∙∙解析C语言程序设计/结构体与共用体2.(4分)在C 语言中,共用体类型属于构造类型∙∙答案正确解析C语言程序设计/数据类型与运算/构造数据类型3.(4分)strcmp3(char *s,char *t){for (;*t= =*s;){if (!*t) return 0; t++;s++;}return (*s-*t);}库函数strcmp(char*s,char*t)是功能相等的程序段∙∙答案正确解析C语言程序设计/指针/指针作为函数参数4.(4分)C语言程序中,一个文件中的函数可以引用另一个文件中的函数和变量∙∙答案正确解析C语言程序设计/文件一、单选题1.(4分)在C语言中,反斜杠符是( )∙ A. \n∙ B. \t∙ C. \v∙ D. \\答案D解析C语言程序设计/数据类型与运算/字符常数表示形式2.(4分)执行下列程序段后, int x=10,y=9;int a,b,c;a=(--x= =y++)?--x:++y;b=x++;c=y; 变量a,b, c的值分别是( )∙ A. a=9,b=9,c=9∙ B. a=8,b=8,c=10∙ C. a=9,b=10,c=9∙ D. a=8,b=8,c=9答案B解析C语言程序设计/选择结构程序设计/条件与算术运算符3.(4分)判断char型变量c1是否小写字母的正确表达式为∙ A. 'a'<=c1<='z'∙ B. (c1>='a')&&(c1<='z')∙ C. (c1>=a)&&(c1<=z)∙ D. ('a'<=c1)||('z'>=c1)答案B解析C语言程序设计/数据类型及运算4.(4分)阅读以下程序,int w=1,x=2,y=3,z=4,m;m=w∙ A. 1∙ B. 2∙ C. 3∙ D. 4答案A解析C语言程序设计/选择结构程序设计/条件运算符嵌套5.(4分)在C语言中运算符的优先级从高到低的排列顺序是∙ A. 关系运算符算术运算符赋值运算符∙ B. 算术运算符赋值运算符关系运算符∙ C. 赋值运算符关系运算符算术运算符∙ D. 算术运算符关系运算符赋值运算符答案D解析C语言程序设计/数据类型及运算6.(4分)若有以下定义, int k=7,x=12, 则能使值为3的表达式是( ) ∙ A. x%=k%=5∙ B. x%=k-k%5∙ C. x%=(k-k%5)∙ D. (x%=k)-(k%=5)答案D解析C语言程序设计/数据类型与运算/算术表达式7.(4分)设有以下定义int k=7, x=12;,则能使值为3的表达式是()∙ A. x%=(k%=5)∙ B. x%=(k-k%5)∙ C. x%=k∙ D. (x%=k)-(k%=5)答案D解析C语言程序设计/数据类型与运算/整型算术表达式8.(4分)设有以下程序片段:char s[ ]='Program!';char *p;p=s;则执行完上面的程序段后,*(p+8)的值为( )∙ A. !'∙ B. '\0'∙ C. 'm'∙ D. 不定值答案B解析C语言程序设计/指针/字符串指针的引用9.(4分)C语言中合法的字符常量是∙ A. ’\\’∙ B. ”H”∙ C. ’He’∙ D. p答案A解析C语言程序设计/数据类型及运算10.(4分)以下read函数的调用形式中,参数类型正确的是( )∙ A. read(int fd,char *buf,int count)∙ B. read(int *buf,int fd,int count)∙ C. read(int fd,int count,char *buf)∙ D. read(int count,char *buf,int fd)答案A解析C语言程序设计/文件/文件的读和写11.(4分)设有以下程序片段:char a[ ]='hello',*p;p=a;printf('%d',*(p+5));执行上面的程序片段后的结果为( )∙ A. 111∙ B. 0∙ C. 104∙ D. 不确定的值答案B解析C语言程序设计/指针/数组元素的引用12.(4分)以下程序main(){int x=10,y=10;printf('%d %d ',x--,--y);}的输出结果是( ) ∙ A. 10 10∙ B. 9 9∙ C. 9 10∙ D. 10 9答案D解析C语言程序设计/顺序程序设计/整型变量的输出格式和算术运算符13.(4分)以下函数的功能对应于int fun(char *s,char *t) { while (*s)&&(*t)&&(*t==*s)} { t++; s ++; } return(*s-*t); }∙ A. strlen(s)+strlen(t)∙ B. strcmp(s,t)∙ C. strcpy(s,t)∙ D. strcat(s,t)答案B解析C语言程序设计/循环控制14.(4分)C语言规定,函数返回值的类型是由( )所决定。
国家开放大学电大《C语言程序设计》网络课形考任务1作业及答案
国家开放大学电大《C语言程序设计》网络课形考任务1作业及答案形考任务1
一、选择题(共40分,每小题2分)
题目1
在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。
选择一项:
A. main 恭喜你,答对啦!!
题目2
C语言源程序文件的缺省扩展名为()。
选择一项:
D. c
题目3
由C语言目标文件连接而成的可执行文件的缺省扩展名为()。
选择一项:
B. exe
题目4
程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用的分隔符为()。
选择一项:
D. 空格或回车
题目5
每个C语言程序文件的编译错误被分为()。
选择一项:
B. 2类
题目6
不符合C语言规定的复合语句是()。
选择一项:
D. {y=10}
题目7
C语言程序中的基本功能模块为()。
选择一项:
D. 函数
题目8
在一个函数定义中,函数头包括的3个部分依次为函数类型、函数名和()。
C程序设计作业
第一章作业答案:一,59,14.4,28.e二1小题,592,15一、将数89、20.25、40.875用十六进制表示二、填空1.在C语言中,数值常量0x3b的十进制值是。
2.字母f的ASCII码为十进制数___________。
第三章作业一、选择题:1、下列变量名中, B 是非法的。
A) Tom B) 3n C) little_boy D) c102、若有以下类型说明char a; int b; float c; double d;则表达式a*b+d-c的结果类型是(A )A)float B)char C)int D)double3、若x为整型,则逗号表达式(x=4*5,x*5),x+25的结果及x的值分别是(C )正确答案是100,45A)45 20 B)125 20 C)125 45 D)100 1004、假设所有变量均为整型,则表达式(a=3,b=2,b++,a+b)的值是 C 。
A) 5 B) 8 C) 6 D)75、已知c2为字符型,则执行语句c2=’E’+’8’-‘A’后,c2的值为 C 。
A) 12 B) 11 C)不确定的值D) 106、设a为double变量,b为int型变量,c为字符型变量,则a+b+c为( C )型A) int B) float C) double D) char7、C语言中不可用作标识符的字符有( C )A下划线B %C数字D字母8、下面四个选项中,均是合法整型常量的是(D )A)160 B)- 0xcdf C)- 01 D)0x - 0xffff 01a 0668 2e59、设a为字符变量,b为int型变量,c为double型变量,则a*b+c为( C )型A. intB. floatC. doubleD. char10.若a是int型变量,则表达式(a=4*5,a*2),a+4的值为( C )A. 20B.22C. 24D. 44第四章作业一、选择题1、若x为int型变量,则执行以下语句后x= C 。
《C程序设计》作业内容
实验一C语言的运行环境的使用一、目的与要求1. 了解Windows系统下C语言的运行环境,熟悉C程序调试、运行的基本操作方法。
2. 熟练掌握编辑、编译、连接和运行C程序的方法。
3. 通过运行简单的C程序,初步了解C源程序的特点。
4. 初步理解C语言的数据类型,了解变量定义、变量赋值以及简单运算方法,了解程序运行结果的基本输出方法。
二、实验例题在C语言运行环境下,按以下例题要求完成程序的编辑、编译、连接和运行,直至取得正确的运行结果。
【例1】编程实现在屏幕上显示如下三行文字Hello, world !Wolcome to the C language world!Everyone has been waiting for.(1)输入如下程序:#include <stdio.h>int main(){printf("Hello,World!\n");printf("Wolcome to the C language world!\n");printf("Everyone has been waiting for.\n");return 0;}(2)将输入的程序以文件名example.c存盘。
(3)编译:通过“组建”(Build) 下拉菜单中的“编译”(compile)命令,编译example.c,若出现编译错误,则修改程序,重新编译,直至编译成功,系统自动生成目标文件example.obj。
(4)连接:通过“组建”(Build)下拉菜单中的“组建”(Build)命令,生成以.exe为扩展名的可执行文件example.exe。
(5)运行:通过“组建”菜单下的“执行”(Excute)命令运行程序并观察运行结果。
【例2】编写程序,将两个整数相加,并输出结果。
#include <stdio.h>int main(){ int a,b,sum;a=123;b=456;sum=a+b;printf(“sum is %d\n”,sum);return 0;}运行方法例1,运行结果为:sum is 579。
C语言程序设计作业五(指针,文件)
C语言程序设计作业五1.对于类型相同的指针变量,不能进行哪种运算?(单选)A. +B. -C. =D. = =2. 若有以下说明和语句,且0<=i<10, 则下面哪个是对数组元素的错误引用?(单选)int a[]={1,2,3,4,5,6,7,8,9,0}, *p, i;p=a;A. *(a+i)B. a[p-a]C. p+iD. *(&a[i])3. 若有以下说明和语句,且0<=i<10,则下面哪个是对数组元素地址的正确表示?(单选)int a[]={1,2,3,4,5,6,7,8,9,0}, *p,i;p=a;A. &(a+1)B. a++C. &pD. &p[i]4. 以下程序的输出结果是___。
#include <stdio.h>main(){int a[]={1,2,3,4,5,6},*p;p=a;*(p+3)+=2;printf("%d,%d\n",*p,*(p+3));}A. 0,5B. 1,5C. 0,6D. 1,65. 以下程序的输出结果是哪一项?(单选)#include <stdio.h>main(){int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}, *p[4],i;for(i=0;i<4;i++)p[i]=&a[i*3];printf("%d\n",p[3][2]);}A. 输出项不合法B. 6C. 8D. 126. 如果有以下的定义:(多选)struct person{char name[20];int age;char sex;};struct person a={"xiao min",20,'m'},*p=&a;则对字符串"li ning"的引用方式可以是下面哪些?A. (*p).nameB. C. D. p->name7. 下面哪些定义的结构在内存分配是等价的。
春秋华师《C语言程序设计A》在线作业
春秋华师《C语言程序设计A》在线作业华师《C语言程序设计A》在线作业一、单选题(共20 道试题,共40 分.)1. 一个C程序地执行是从A. 本程序地main函数开始,到main函数结束B. 本程序文件地第一个函数开始,到本程序文件地最后一个函数结束C. 本程序地main函数开始,到本程序文件地最后一个函数结束D. 本程序文件地第一个函数开始,到本程序main函数结束正确答案:2. 在一个被调用函数中,关于return语句使用地描述,错误地是().A. 被调用函数中可以不用return语句B. 被调用函数中可以使用多个return语句C. 被调用函数中,如果有返回值,就一定要有return语句D. 被调用函数中,一个return语句可以返回多个值给调用函数正确答案:3. 以下不能对二维数组a进行正确初始化地语句是A. int a[2][3]={0};B. int a[][3]={{1,2},{0}};C. int a[2][3]={{1,2},{3,4},{5,6}};D. int a[][3]={1,2,3,4,5,6};正确答案:4. 下面有关for循环地正确描述是A. for循环只能用于循环次数已经确定地情况B. for循环是先执行循环体语句,后判断表达式C. 在for循环中,不能用break语句跳出循环体D. for循环地循环体语句中,可以包含多条语句,但必须用花括号括起来正确答案:5. 在下列运算符中,()优先级最低.A. !B. &&C. !=D. ?:正确答案:6. C语言中,长整型long数据在内存中地存储形式是().A. ASCIIB. 原码C. 反码D. 补码正确答案:7. 在C语言中,引用数组元素时,其数组下标地数据类型允许是A. 整型常量B. 整型表达式C. 整型常量或整型表达式D. 任何类型地表达式正确答案:8. 判断char型变量ch是否为大写字母地正确表达式是A. ‘A’<=ch<=‘Z’B. (ch>=‘A’)&(ch<=‘Z’)C. (ch>=‘A’)&&(ch<=‘Z’)D. (‘A’<=ch)AND(‘Z’>=ch)正确答案:9. 将两个字符串连接起来组成一个字符串时,选用()函数.A. strlen( )B. strcpy( )C. strcat( )D. strcmp( )正确答案:10. 下面四个选项中,均是合法转义字符地选项是A. ‘\’’ ‘\\’ ‘\n’B. ‘\’ ‘\017’ ‘\”’C. \018’ ‘\f’ ‘xab’D. \\0’ ‘\101’ ‘x1f’正确答案:11. 若有说明:int a[3][4];则对a数组元素地正确引用是A. a[2][4]B. a[1,3]C. a[1+1][0]D. a(2)(1)正确答案:12. 对以下说明语句地正确理解是______. int a[10]={6,7,8,9,10};A. 将5个初值依次赋给a[1]至a[5]B. 将5个初值依次赋给a[0]至a[4]C. 将5个初值依次赋给a[6]至a[10]D. 因为数组长度与初值地个数不相同,所以此语句不正确正确答案:13. 若有说明:int a[][4]={0,0};则下面不正确地叙述是A. 数组a地每个元素都可得到初值0B. 二维数组a地第一维大小为1C. 因为二维数组a中第二维大小地值除以初值个数地商为1,故数组a地行数为1D. 只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0正确答案:14. C语言中地标识符只能由字母、数字和下划线三种字符组成,且第一个字符A. 必须为字母B. 必须为下划线C. 必须为字母或下划线D. 可以是字母、数字和下划线中任一种字符正确答案:15. 逻辑运算符两侧运算对象地数据类型A. 只能是0或1B. 只能是0或非0正数C. 只能是整型或字符型数据D. 可以是任何类型地数据正确答案:16. 以下不正确地C语言标识符是().A. AB1B. _ab3C. 4abD. a2_b正确答案:17. 若有说明:int a[3][4];则对a数组元素地非法引用是A. a[0][2*1]B. a[1][3]C. a[4-2][0]D. a[0][4]正确答案:18. 在C语言中(以16位PC机为例),5种基本数据类型地存储空间长度地排列顺序为A. char<int<="float<double</p">B. char=int<="float<double</p">C. char<intD. char=int=long int<=float<double< p="">正确答案:19. 对for(表达式1;;表达式3)可理解为A. for(表达式1;0;表达式3)B. for(表达式1;1;表达式3)C. for(表达式1; 表达式1;表达式3)D. for(表达式1; 表达式3;表达式3)正确答案:20. 在下列表达式选项中,()是正确地.A. a++++bB. +a++C. a++bD. a+++b正确答案:华师《C语言程序设计A》在线作业二、多选题(共15 道试题,共30 分.)1. 表示一个算法地方式包括哪些?A. 用自然语言表示B. 用流程图表示C. 用N-S流程图表示D. 用伪代码表示正确答案:2. 关于switch语句叙述正确地是A. 语句中,case地冒号后面允许没有语句.B. switch语句中,每一个case地冒号后面都允许跟有多条语句.C. 在与switch语句配套地case语句中所使用地表达式可以是变量或常量.D. switch语句中,可以没有default语句.正确答案:3. 若a为整型变量,则下列表达式地值为0地是A. a%aB. a!=aC. 3/4D. 3&&0正确答案:4. 下列描述正确地是:A. getchar函数只能接收一个字符B. getchar函数得到地字符可以赋给一个字符变量C. getchar函数得到地字符可以赋给一个整型变量D. getchar函数得到地字符可以作为表达式地一部分正确答案:5. 哪些运算符属于逻辑运算符?A. &&B. ||C. !D. ^正确答案:6. 以下哪些函数可以实现字符地输出?A. putchar函数B. getchar函数C. printf函数D. scanf函数正确答案:7. 函数调用strcat(strcpy(str1,str2),str3)地功能,以下说法错误地有:A. 将串str1复制到串str2中后在连接到串str3之后;B. 将串str1连接到串str2之后再复制到串str3之后;C. 将串str2复制到串str1中后再将串str3连接到串str1之后;D. 将串str2连接到串str1中后再将串str1复制到串str3中正确答案:8. 以下哪些属于C语言地运算符?A. 算术运算符B. 关系运算符C. 逻辑运算符D. 位运算符正确答案:9. 哪些运算符属于关系运算符?A. <B. <=C. >=D. %正确答案:10. 下列函数中,能够输出字符数据地函数有A. puts( )B. printf( )C. scanf( )D. putchar( )正确答案:11. 假设float x,y,z;,并通过scanf("%f%f%f ",&a,&b,&c);对a赋于10.0,b赋予22.0,c赋予33.0地值,下面正确地输入形式是(注:符号【代表空格):A. 10<回车>22<回车> 33<回车>B. 10.0<回车>22.0<回车>33.0<回车>C. 10.0,22.0,33.0<回车>D. 10.0【22.0【33.0<回车>正确答案:12. 以下正确地说法有A. C语言程序地基本组成单位是函数;B. 函数必须要有返回值;C. 一个函数地类型为void,在定义时,可以省略void;D. 函数声明是一条C语句正确答案:13. 下面属于转义符地有:A. ‘\t ’B. ‘\n’C. ‘%d’D. ‘\376’正确答案:14. 以下关于函数地叙述正确地有A. 一个C语言程序有且仅有一个main函数;B. C语言程序中,main函数是没有参数地;C. 一个函数通过其他函数间接地调用了自身,这种情况也是一种递归调用;D. main函数是由系统调用地正确答案:15. 若有char ch;,下面可以对变量c正确赋值地语句是:A. ch =‘A’;B. getchar(ch);C. ch = getchar();D. scanf(“%c”,&ch);正确答案:华师《C语言程序设计A》在线作业三、判断题(共15 道试题,共30 分.)1. 若有定义:int a[5],*p;,则操作p=a;是合法地操作.A. 错误B. 正确正确答案:2. 在一个函数定义中,只能有一个return语句.A. 错误B. 正确正确答案:3. C语言中,任意两个函数间不能嵌套定义,但可以互相调用.A. 错误B. 正确4. 若a=1,b=2,c=3,则执行表达式(a>b)&& (c++)后,c 地值为4.A. 错误B. 正确正确答案:5. 如果指针占用地内存大小为2Byte,那么指向它地二重指针占用内存大小为4Byte.A. 错误B. 正确正确答案:6. 变量分为全局和局部两种,自动局部变量没有赋初值时,其值是不确定地.A. 错误B. 正确正确答案:7. 一个C程序无论有多少个源程序文件组成,在其中一个源程序文件中定义地全局变量地作用域默认为整个C程序.A. 错误B. 正确正确答案:8. C语言与其他高级语言一样,对于所有地同级运算符均遵循左结合原则.A. 错误B. 正确正确答案:9. 整型变量m地值为27,语句printf("m=%x",m);地输出结果为m=1b.A. 错误B. 正确10. 未初始化地int类型数组,其各元素地值全是0.A. 错误B. 正确正确答案:11. 实际上,可以用顺序、分支、循环三种结构构造任何算法.A. 错误B. 正确正确答案:12. 若有定义:int a[5][5],(*p)[5];,则操作p=*a;是合法操作.A. 错误B. 正确正确答案:13. 定义一个具有10个元素地整型数组,应当使用语句int a[10]; .A. 错误B. 正确正确答案:14. 在C程序中,函数调用可以作为函数地形参.A. 错误B. 正确正确答案:15. 当主程序执行完毕时,亦即程序执行完毕.A. 错误B. 正确正确答案:版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理.版权为个人所有This article includes some parts, including text, pictures, and design. Copyright is personal ownership.文档来源网络及个人整理,勿用作商业用途用户可将本文地内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本网站及相关权利人地合法权利.除此以外,将本文任何内容或服务用于其他用途时,须征得本人及相关权利人地书面许可,并支付报酬.文档来源网络及个人整理,勿用作商业用途Users may use the contents or services of this article for personal study, research or appreciation, and othernon-commercial or non-profit purposes, but at the same time, they shall abide by the provisions of copyright law and other relevant laws, and shall not infringe upon the legitimate rights of this website and its relevant obligees. In addition, when any content or service of this article is used for other purposes, written permission and remuneration shall be obtained from the person concerned and the relevant obligee.文档来源网络及个人整理,勿用作商业用途转载或引用本文内容必须是以新闻性或资料性公共免费信息为使用目地地合理、善意引用,不得对本文内容原意进行曲解、修改,并自负版权等法律责任.文档来源网络及个人整理,勿用作商业用途Reproduction or quotation of the content of this article must be reasonable and good-faith citation for the use of news or informative public free information. It shall not misinterpret or modify the original intention of the content of this article, and shall bear legal liability such as copyright.文档来源网络及个人整理,勿用作商业用途</double<></int</int。
《C语言程序设计教程》习题参考答案
《C语言程序设计教程》习题参考答案C语言程序设计教程习题参考答案一、基本概念和语法要点1. 整型变量x的声明和初始化语句为:int x = 10;2. C语言的标识符命名规则:- 只能由字母、数字和下划线组成;- 必须以字母或下划线开头;- 大小写敏感。
3. 常量的分类:- 整型常量;- 实型常量;- 字符常量;- 字符串常量;- 枚举常量;- 特殊常量。
4. 基本输入输出函数的使用:- printf():输出格式化字符串;- scanf():从标准输入读取格式化数据。
5. C语言中的运算符:- 算术运算符:+、-、*、/、%;- 关系运算符:==、!=、>、<、>=、<=; - 逻辑运算符:&&、||、!;- 位运算符:&、|、^、~、<<、>>。
二、流程控制语句1. if语句的基本结构:```if (条件表达式){// 如果条件成立执行的代码}```2. switch语句的使用:```switch (表达式)case 值1:// 执行的代码块break;case 值2:// 执行的代码块break;default:// 执行的代码块break;}```3. while循环语句的基本结构: ```while (条件表达式){// 循环执行的代码}4. for循环语句的使用:```for (初始化表达式; 条件表达式; 更新表达式) {// 循环执行的代码}```三、数组与字符串1. 数组的声明和初始化语句:```int arr[5] = {1, 2, 3, 4, 5};```2. 字符串的声明和初始化语句:```char str[20] = "Hello, World!";```3. 字符串的输入输出函数:- gets():从标准输入读取字符串; - puts():将字符串输出到标准输出。
4. 字符串处理函数:- strlen():计算字符串长度;- strcat():拼接字符串;- strcpy():复制字符串;- strcmp():比较两个字符串。
计算机《C语言程序设计》暑假作业
计算机《C语言程序设计》暑假作业1、下面程序段的运行结果是。
a=3;b=2;c=2;while(a>b<c){t=a;a=b;b=t;c--;}printf("%d,%d,%d",a,b,c);2、下面程序段的运行结果是。
x=y=1;while(x<20)y++,x+=++y;printf("%d,%d",y,x);3、下面程序段的运行结果是。
int n=5;while(n- - >=2)printf("%d",n);4、下面程序的功能是将从键盘输入的一对数,由小到大排序输出。
当输入一对相等数时结束循环,请填空。
#include <stdio.h>main(){int a,b,t;scanf("%d%d",&a,&b);while( ){if (a>b){t=a;a=b;b=t;}printf("%d,%d\n",a,b);scanf("%d%d",&a,&b);}}5、下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m,n中的较大者#include <stdio.h>main(){int m=0,n=0;char c;while ((【1】)!='\n'){ if(c>='A'&&c<='Z') m++;if (c>='a'&&c<='z') n++;}printf("%d",m<n?【2】);}6、下面程序的功能是将小写字母变成对应大写字母后的第二个字母,其中y变成A,z 变成B。
请填空。
#include <stdio.h>main(){ char c;while ((c=getchar())!='\n'){if (c>='a'&&c<='z'){【1】;if (c>'Z')【2】;}printf("%c",c);}}7、下面程序的功能是在输入一批正整数中求出最大者,输入0结束循环,请填空。
2019年电大《C语言程序设计》第1、2、3、4次作业及答案参考必考重点
3、4 次作业及答案电大《C++语言程序设计》第1、2、第一次作业一、写出下列每个程序运行后的输出结果1. #include<stdio.h>void main(){int x=5;switch(2*x-3){case 4:printf("%d ",x);case 7:printf("%d ",2*x+1);case 10:printf("%d ",3*x-1);break;default:printf("%s ","default\n");}printf("%s\n","switch end.");}2. #include<stdio.h>void main(){int i,s=0;for(i=1;i<=6;i++)s+=i*i;printf("s=%d\n",s);}3. #include<stdio.h>void main(){int i,s1=0,s2=0;for(i=0;i<10;i++)if(i%2)s1+=i;else s2+=i;printf("%d %d\n",s1,s2);}4. #include<stdio.h>void main(){int n=10,y=1;while(n--){y++;y++;} printf("y=%d\n",y);}5. #include<stdio.h>void main(){int f,f1,f2,i;f1=f2=1;printf("%d %d ",f1,f2);for(i=3;i<=10;i++){ f=f1+f2; printf("%d ",f);if(i%5==0)printf("\n"); f1=f2;f2=f;}printf("\n");}6. #include<stdio.h>#include<math.h>void main(){int i,n;for(n=2;n<=20;n++){int temp=(int)sqrt(n);//sqrt(n) 求出n 的平方根并取整for(i=2;i<=temp;i++)if(n%i==0)break;if(i>temp)printf("%d ",n); }printf("\n");7. #include<stdio.h> #include<math.h> const int M=20; void main() {int i,c2,c3,c5; c2=c3=c5=0;for(i=1;i<=M;i++){ if(i%2==0)c2++; if(i%3==0)c3++; if(i%5==0)c5++;}printf("%d %d %d\n",c2,c3,c5); }8. #include<stdio.h> #include<math.h> const int M=20; void main(){int i,s; for(i=1,s=0;i<15;i++){if(i%2==0 || i%3==0)continue; printf("%d ",i);s+=i;} printf("%d\n",s);}参考答案:1、答案:11 14 switch end.2、答案:s=91.3、答案:25 20.4、答案:y=21.5、答案: 1 1 2 3 58 13 21 34 556、答案:2 3 5 7 11 13 17197、答案:10 6 48、答案: 1 5 7 11 13 37第二次作业一、根据下列每个题目要求编写程序1.编写一个函数,函数头格式为“void fun4(char *a , int b[]) ”,分别求出由字符指针a 所指向的字符串中包含的每种十进制数字出现的次数,把统计结果保存在数组b 的相应元素。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一C语言的运行环境的使用一、目的与要求1、了解Windows系统下C语言的运行环境,熟悉C程序调试、运行的基本操作方法。
2、熟练掌握编辑、编译、连接与运行C程序的方法。
3、通过运行简单的C程序,初步了解C源程序的特点。
4、初步理解C语言的数据类型,了解变量定义、变量赋值以及简单运算方法,了解程序运行结果的基本输出方法。
二、实验例题在C语言运行环境下,按以下例题要求完成程序的编辑、编译、连接与运行,直至取得正确的运行结果。
【例1】编程实现在屏幕上显示如下三行文字Hello, world !Wolcome to the C language world!Everyone has been waiting for、(1)输入如下程序:#include <stdio、h>int main(){printf("Hello,World!\n");printf("Wolcome to the C language world!\n");printf("Everyone has been waiting for、\n");return 0;}(2)将输入的程序以文件名example、c存盘。
(3)编译:通过“组建”(Build) 下拉菜单中的“编译”(compile)命令,编译example、c,若出现编译错误,则修改程序,重新编译,直至编译成功,系统自动生成目标文件example、obj。
(4)连接:通过“组建”(Build)下拉菜单中的“组建”(Build)命令,生成以、exe为扩展名的可执行文件example、exe。
(5)运行:通过“组建”菜单下的“执行”(Excute)命令运行程序并观察运行结果。
【例2】编写程序,将两个整数相加,并输出结果。
#include <stdio、h>int main(){ int a,b,sum;a=123;b=456;sum=a+b;printf(“sum is %d\n”,sum);return 0;}运行方法例1,运行结果为:sum is 579。
【例3】编写程序,要求从键盘输入2个整数,输出其中较大的数。
#include <stdio、h>int main(){ int a,b,c;int max(int,int);scanf(“%d,%d”,&a,&b); //等待用户从键盘输入2个整数,输入时两数以逗号间隔c=max(a,b);printf(“max=%d”,c);return 0;}int max(int x,int y){ int z;if (x>y) z=x;else z=y;return(z);}注意:(1)第5行使用了输入函数scanf,程序运行之后,光标停留在用户屏幕上等待用户输入两个整数,比如输入“3,5”,回车,程序取得输入数据后继续运行,最后输出运行结果,即在用户屏幕上显示“max=5”。
(2)该例定义了max函数,并在主函数中调用max函数实现了找出两数中较大数的功能。
(3)请思考,如果直接在主函数中对两数进行比较从而找出较大数,程序该如何编写?【例4】输入并运行下程序,观察运行结果。
#include <stdio、h>int main(){ char c1, c2;c1=97;c2=98;printf(“%c %c”, c1, c2);return 0;}在此基础上,(1)在第6行后面加入下面的printf语句,运行并观察运行结果。
printf(“%d,%d”, c1, c2 );(2)再将第3行改为:int c1, c2;运行并观察运行结果。
(3)再将第4、5行改为:c1=300; c2=400;再使之运行,观察并思考运行结果。
该程序说明了字符型数据在特定情况下可作为整型数据处理,整型数据有时也可以作为字符型数据处理。
【例5】分析下面程序,写出运行结果,再输入计算机运行,将得到的结果与您分析得到的结果比较对照。
#include <stdio、h>int main(){char c1=’a’,c2=’b’,c3=’c’,c4=’\101’,c5=’\116’;printf(“a%c b%c\tc%c\tabc\n”,c1,c2,c3);printf(“\t%c %c”,c4,c5);return 0;}该程序主要考查对转义字符的掌握情况。
【例6】分析下面程序,写出运行结果,再输入计算机运行,将得到的结果与您分析得到的结果比较对照。
#include <stdio、h>int main(){ int i,j, m, n ;i=8; j=10;m=++i; n=j++;printf(“%d,%d,%d,%d”,i,j,m,n);return 0;}分别作以下改动之后,先分析再运行,并对结果进行比对:(1)将第5行改为:m=i++; n= ++j;(2)程序改为:#include <stdio、h>int main(){ int i , j ;i=8; j=10;printf(“%d,%d”, i++, j++);return 0;}(3) 在(2)的基础上,将printf语句改为:printf(“%d,%d”, ++ i, ++ j );(4)再将printf语句改为:printf(“%d,%d,%d,%d”,i,j,i++,j++);(5)程序改为:#include <stdio、h>void main(){ int i , j , m=0 , n=0 ;i=8; j=10;m+=i++; n-=--j;printf(“i=%d,j=%d,m=%d,n=%d”,i,j,m,n);}此程序主要考查自加、自减运算符以及复合运算符的用法。
三、上机内容1.参照例题,编写一个C程序,输出以下信息:****************************Hello,World!****************************四、实验结果分析对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。
实验二顺序结构与选择结构程序设计一、实验目的及要求1.理解C语言程序的顺序结构;2.掌握常用的C语言语句,熟练应用赋值、输入、输出语句;3.了解C语句表示逻辑量的方法(以0代表“假”,以1代表“真”);4.学会正确使用逻辑运算符与逻辑表达式;5.熟练掌握if语句与switch语句。
二、实验内容1、已知圆半径r=1、5,圆柱高h=3, 求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积。
2、输入一个华氏温度,要求输出摄氏温度。
公式为c=5/9*(f-32)。
3、有3个整数a、b、c,由键盘输入,编程序按从小到大的顺序将它们排序并输出。
4、编程序计算下面的函数:x 0<x<1y= |x|+2 3≤x≤4sin(x2) 当x取其她值时5、输入一个整数m,判断它能否被7、11、17整除,如果能被以上三个数之一整除,则输出它能被整除的信息,否则输出m不能被7、11、17整除的信息。
6、电文加密的算法就是:将字母A变成字母G,a变成g,B变成H,b变成h,依此类推,并且U变成A,V变成B,等等。
从键盘输入一个电文字符,输出其相应的密码。
7、企业发放的奖金根据利润提成。
若利润I≤10万元,奖金可提10%;若10万<I≤20万时,则低于等于10万元的部分按10%提成,高于10万元部分,可提成7、5%;若20万<I≤40万时,低于等于20万元的部分仍按上述办法提成,高于20万元部分按5%提成;按类似的办法,若40万<I≤60万元时,高于40万元部分按3%提成;若60万<I≤100万元时,高于60万元的部分按1、5%提成;若I>100万时,超过100万元部分按1%提成。
从键盘输入当月利润I,求应发奖金总数。
三、实验结果分析对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。
实验三 循环结构程序设计一、实验目的及要求1.熟练掌握while 、do —while 与for 三种循环语句的应用。
2.掌握基本的编程算法。
二、实验内容1、利用公式sinx=x-x 3/3!+x 5/5!-x 7/7!+x 9/9!-…+(-1)(n-1)·x(2n-1) /(2n-1)!编程计算sinx 的值。
设x=0、5,n=9。
2、编写程序求:3、输入20个有符号整数,统计正整数、零、负整数的个数。
4、输入m 个数,求其最大数、最小数与平均值。
5、在100与1000之间,有多少个其数字之与等于9而且该数可被5整除的整数?6、一位同学问老师与老师夫人的年龄就是多少,老师说:“我年龄的平方加上我夫人的年龄恰好等于1053,而我夫人年龄的平方加上我的年龄等于873。
”试计算老师与其夫人的年龄。
7、打印下列图案*************三、实验结果分析对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。
∑==101n !n s实验四、数组程序设计一、实验目的及要求1.掌握一维、二维数组的定义、赋值与输入输出的方法;2.掌握字符数组的使用;3.掌握与数组有关的算法(例如排序算法)。
二、实验内容1、给整型二维数组 b[3][4]输入12个数据,计算并输出数组中所有正数之与、所有负数之与。
2、青年歌手参加歌曲大奖赛,有10个评委进行打分,试编程求这位选手的平均得分(去掉一个最高分与一个最低分)。
分析:这道题的核心就是排序。
将评委所打的10个分数利用数组按增序(或降序)排列,计算数组中除第一个与最后一个分数以外的数的平均分。
3、设二维数组 b[5][4]中有鞍点,即b[i][j]元素值在第i行中最大,且在第j列中最小,试编写一程序找出所有的鞍点,并输出其下标值。
也可能没有。
4、从键盘输入一数,然后在一个整型一维数组a[20]中,用折半查找法找出该数就是数组中第几个元素的值。
如果该数不在数组中,则打印”No found”。
5、编程打印如下图形:** ** ** **6、有一电文,已按下列规律译成译码:A→Z a→zB→Y b→yC→X c→x即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母。
非字母字符不变。
编写一个程序将密码译成原文,并输出密码与原文。
三、实验结果分析对实验结果进行检验,如结果出现错误,分析产生错误的原因并修改程序、改正错误。
实验五函数程序设计一、目的与要求1.掌握C语言函数的定义方法、函数的声明及函数的调用方法。
2.了解主调函数与被调函数之间的参数传递方式。