电子科技《C语言》在线作业1辅导答案
国家开放大学电大《C语言程序设计》网络课形考任务1作业及答案
![国家开放大学电大《C语言程序设计》网络课形考任务1作业及答案](https://img.taocdn.com/s3/m/398c2f24905f804d2b160b4e767f5acfa1c7830a.png)
国家开放大学电大《C语言程序设计》网络课形考任务1作业及答案形考任务1一、选择题(共40分,每小题2分)题目1在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()o选择一项:A.main恭喜你,答对啦!!题目2C语言源程序文件的缺省扩展名为()。
选择一项:D. c题目3由C语言目标文件连接而成的可执行文件的缺省扩展名为()o选择一项:B.exe题目4程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用的分隔符为()。
选择一项:D.空格或回车题目5每个C语言程序文件的编译错误被分为()。
选择一项:B. 2类题目6不符合C语言规定的复合语句是()。
选择一项:D. (y=10)题目7C语言程序中的基本功能模块为()。
选择一项:D.函数在一个函数定义中,函数头包括的3个部分依次为函数类型、函数名和()o选择一项:C.参数表题目9在—个程序文件中,若要使用^include命令包含一个用户定义的头文件,则此头文件所使用的起止定界符为一对()o选择一项:B.双引号题目10在C语言程序中,多行注释语句使用的开始标记符为()。
选择一项:B./*题目11在printf ()函数调用的格式字符串中,若使用格式符为“%c”,则对应输出的数据类型为()。
选择一项:A. char题目12在printf ()函数调用的格式字符串中,若使用格式符为“%5d”,则规定对应输出的数据占用的字符位置个数为()。
选择一项:A. 5题目13转义字符'\\'表示的字符是()。
选择一项:C.反斜线题目14枚举类型中的每个枚举常量的值都是一个()。
选择一项:A.整数题目15运算符优先级最高的是()。
选择一项:题目16设x和y均为逻辑值,则x && y为真的条件是()。
选择一项:A.它们均为真题目17设有语句“int a=12; a+=a*a;”,则执行结束后,a的值为()。
选择一项:C. 156题目18x>0 && x<=10的相反表达式为()。
C语言习题答案1-10
![C语言习题答案1-10](https://img.taocdn.com/s3/m/62e6a77577232f60ddcca1b6.png)
习题答案习题1(参考答案)1.程序与算法的概念及二者的区别是什么?程序:为了实现特定目标或解决特定问题而用计算机语言偏写的指令序列,它由算法和数据结构组成。
算法:(Algorithm)是在有限步骤内求解某一问题所使用的一组定义明确的规则。
通俗地讲,就是计算机解题的步骤。
算法与程序的区别:计算机程序是算法的一个实例,同一个算法可以用不同的计算机语言来表达。
2.简述程序设计语言发展的过程程序设计语言经过最初的机器代码到今天接近自然语言的表达,经过了四代的演变。
一般认为机器语言是第一代,符号语言即汇编语言为第二代,面向过程的高级语言为第三代,面对象的编程语言为第四代。
3.简述高级程序设计语言中面向过程与面向对象的概念。
“面向过程”是一种以过程为中心的编程思想。
首先分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步地实现,使用的时候依次调用函数即可。
一般的面向过程是从上往下步步求精,所以面向过程最重要的是模块化的思想方法。
“面向对象”是一种以事物为中心的编程思想。
面向对象的方法主要是将事物对象化,对象包括属性与行为。
面向过程与面向对象的区别:在面向过程的程序设计中,程序员把精力放在计算机具体执行操作的过程上,编程关注的是如何使用函数去实现既定的功能;而在面向对象的程序设计中,技术人员将注意力集中在对象上,把对象看做程序运行时的基本成分。
编程关注的是如何把相关的功能(包括函数和数据)有组织地捆绑到一个对象身上。
4.C语言程序的特点是什么?(1)C语言非常紧凑、简洁,使用方便、灵活,有32个关键字,有9种流程控制语句。
(2)C语言运算符丰富,共有45个标准运算符,具有很强的表达式功能,同一功能表达式往往可以采用多种形式来实现。
(3)数据类型丰富。
C语言的数据类型有整型、实型、字符型、数组类型、结构类型、共用类型和指针类型,而且还可以用它们来组成更复杂的数据结构,加之C语言提供了功能强大的控制结构,因而使用C语言能非常方便地进行结构化和模块化程序设计,适合于大型程序的编写、调试。
电子科技大学14秋《C语言(专科)》在线作业1答案
![电子科技大学14秋《C语言(专科)》在线作业1答案](https://img.taocdn.com/s3/m/7b3bb8e519e8b8f67c1cb9ce.png)
14秋《C语言(专科)》在线作业1
一,单选题
1. 有以下程序段typedefstructnode{intdata;structnode*next;}*NODE;NODEp;以下叙述中正确的是()。
A. p是指向structnode结构体变量的指针的指针
B. NODEp;语句出错
C. p是指向structnode结构变量的指针
D. p是structnode结构变量
正确答案:C
2. 对函数的正确描述()
A. 在C语言中可以嵌套定义函数
B. 自定义函数和调用函数可以不在一个源文件中
C. 函数定义都是平行的,独立的
D. 不能嵌套调用函数
正确答案:C
3. 以下选项中,当x为大于1的奇数时,值为0的表达式是()。
A. x%2==1
B. x/2
C. x%2!=0
D. x%2==0
正确答案:D
4. 在C语言中,下面那一个不是正确的概念()
A. 所有循环语句都要求至少要执行一次循环体
B. goto和if语句能构成循环语句
C. 循环过程只能包含,不能交叉
D. 循环体可以是一条语句
正确答案:A
5. 一个C程序的执行是从()
A. C程序的main函数开始,到main函数结束
B. 本程序的第一个函数开始,到本程序最后一个函数结束
C. 本程序的main函数开始,到本程序文件的最后一个函数结束
D. 本程序的第一个函数开始,到本程序main函数结束
正确答案:A
6. 若有定义:intw[3][5];,则以下不能正确表示该数组元素的表达式是()。
A. *(*w+3)
B. *(w+1)[4]
C. *(*(w+1))。
大一C语言课后习题答案
![大一C语言课后习题答案](https://img.taocdn.com/s3/m/53db003186c24028915f804d2b160b4e767f813b.png)
习题一一、填空题1.主函数/main、主函数/main、主函数/main2.声明部分、执行部分3.源程序4.由一个或多个函数5.最前面6./*和*/二、选择题1.C 2.B 3.A 4.C 5.C 6.C 7.A 8.B 9.B 10.B 习题二一、填空题1.scanf和printf函数2.标识符3.字母、数字、下划线、字母、下划线4.十进制、八进制、十六进制5.单撇号6.327.18,14,a8.123、45.09.67,G10.1030011.25 21 3712.n1=%d\nn2=%d\n二、选择题1.A 2.D 3.C 4.C 5.C 6.B 7.A 8.D 9.A 10.D 11.D 12.C 13.A 14.C习题三一、填空题1.0,非02.else 总是与它前面最近的、等待与else配对的if配对3.将下列条件写成C语言的逻辑表达式:(1)x<0&&y!=0(2)x%3==0&&x%7==0(3)a<0||b<0||c<0(4)x>0 && x<=10(5)ch>=’a’ && ch<=’z’ || ch>=’A’ && ch<=’Z’4. 2 15.5 46.-4二、选择题1.B 2.C 3.B 4.A 5.B 6.C 7.8.D 9.D 10.A 11.C 12.B习题四一、填空题1.102.363.34.死、05.66.2*i – 1、printf("\n")7.100 – i*5 –j*2、k>=08.43219.2.40000010.*#*#*#$二、选择题1.C 2.A 3.C 4.都不对(b值为8)5.B6.C 7.C 8.C 9.C 10.D11.A 12.B 13.D 14.B 15.C16.D 17.D 18.C 19.B 20.A 习题五一、填空题1.变量2.54,102,1713.scanf("%f%f%f",&a,&b,&c);4.05.A:12B:1811 , 8C:42, 1, 4 D:7 2, 3, 4 6.A:1 B:1 C:1 D:1 7.A:8 B:0 C:1 D:9 8.5,10 9.整型10.x>2&&x<3||x<-10二、选择题1.C 2.C 3.D 4.A 5.D6.A 7.A 8.D 9.C 10.B11.C 12.B 13.D 14.C 15.D三、编程题1、int result;result=i>j?1:(i==j?0:-1);2、#include <stdio.h>main(void){int n,i;char ch;//提示输入数据printf("请输入ch和n:\n");scanf("%c%d",&ch,&n);//判断输入数据的有效性while(n<=0){printf("输入n值有错误,请重新输入\n"); scanf("%c%d",&ch,&n);}//输出结果for(i=0;i<n;i++)printf("%c",ch);}#include <stdio.h>void main(void){float f;//提示输入数据printf("请输入实数f:\n"); scanf("%f",&f);//计算过程f=f-(int)f;//输出结果printf("小数部分为:%f",f); }#include <stdio.h>void main(void){int n,count=0;//提示输入数据printf("请输入一个整数:\n"); scanf("%d",&n);//处理n为负整数的情况if(n<0)n=-n;//计算过程while(n){count++;n=n/10;}//输出结果printf("输入整数的位数是:%d",count); }5、#include <stdio.h>void main(void){int n,count=0;//提示输入数据printf("请输入一个整数:\n");scanf("%d",&n);//判断n的正负,同时对于零值特殊处理if(n<0)printf("输入整数的是负数");else if(n>0)printf("输入整数的是正数");elseprintf("输入整数的零");//判断n的奇偶性if(n%2 == 0)printf("并且是偶数");elseprintf("并且是奇数");}习题六一选择题1 C2 B3 A4 D5 D6 B7 C8 A9 D 10 A11 A 12 B 13 D 14 A 15 B二填空题1 按行排序2 2,43 字符数组4 数组第一个元素地址5 06 1 5 92 6 103 7 114 8 127 *********8 *********912 13 3 14 6 4 110 abcde11 i=1 x[i-1]12 int flag, i scanf(”%s”,str1) str[i]!=str1[i]13 i<=10-j a[i]<a[i+1] t=a[i] a[i+1]=t 习题七一、填空题1.52.153.max=23,min=-4max=0,min=04.1365.first:11,3,9second:20,3,9third:20,3,5二、选择题1.A 2.A 3.C 4.D 5.A6.C 7.A 8.B 9.A 10.A11.B 12.A 13.B 14.D 15.D 习题八一、错,对,错,对,错,对,对二、1. 地址2. &3. *4. 0和NULL5. void6. 5 , 19, 12, 157. ‘\0’,s8. s+n-1, p1<p2, p2--9. ‘\0’,n++10. s[i]<’0’ || s[i]>’9’,‘\0’11. ch=f12. s=2413. s=xbcdBCD14. PEOPLEpeople and computer15. 80, -20三、1. A 2. C 3. AC 4. D 5. B 6~10 BDDAD11~15 DDBBC16~20 BBCAC。
[东北大学]20秋学期《C语言及程序设计》在线平时作业1辅导答案
![[东北大学]20秋学期《C语言及程序设计》在线平时作业1辅导答案](https://img.taocdn.com/s3/m/199f79d6783e0912a3162a6d.png)
【奥鹏】-[东北大学]20秋学期《C语言及程序设计》在线平时作业1注:每学期试题都会有所不同,请认真做好复习!一、单选题 (共 13 道试题,共 65 分)1.在C语言中,引用数组元素时,其数组下标的数据类型允许是()。
[A选项]-整型常量[B选项]-整型表达式[C选项]-整型常量或整型表达式[D选项]-任何类型的表达式解析:试题难度4颗星【参考选择】:C2.有两个字符数组a、b,则以下正确的输入语句是()。
[A选项]-gets(a,b);[B选项]-"scanf(""%s%s"",a,b);"[C选项]-"scanf(""%s%s"",a,b);"[D选项]-"gets(""a""),gets(""b"");"解析:试题难度4颗星【参考选择】:C3.下面四个选项中,均是正确的数值常量或字符常量的选项是()。
[A选项]-0.00f8.9e''[B选项]-"""a""3.9E-2.51e1'\""'"[C选项]-3'0110xFF000a[D选项]-001E140xabcd2e250.I14解析:试题难度4颗星【参考选择】:D4.以下能对二维数组a进行正确初始化的语句是()。
[A选项]-inta[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}};"解析:试题难度4颗星【参考选择】:B5.若运行以下程序时,从键盘输入25,13,10回车,则输出结果为()。
东大14秋C语言及程序设计》在线作业1答案
![东大14秋C语言及程序设计》在线作业1答案](https://img.taocdn.com/s3/m/7d7cae0cde80d4d8d15a4f3f.png)
B. inta[10]={};
C. inta[]={0};
D. inta[10]={10*1};
?
正确答案:C
7.以下不正确的C语言标识符是()。
A. int
B. a_1_2C. ab1 NhomakorabeaxeD. _x
?
正确答案:A
8.当正常执行了文件关闭操作时,fclose函数的返回值是()。
D. "inta[][3]={{1,0,1},{},{1,1}};"
?
正确答案:B
4.有定义inta[3][4],输入其3行2列元素的正确语句为()
A. scanf(“%d”,a[3,2]);
B. "scanf(“%d”,*(*(a+2)+1))"
C. "scanf(“%d”,*(a+2)+1);"
14秋学期《C语言及程序设计》在线作业1
一,单选题
1.下面四个选项中,均是正确的数值常量或字符常量的选项是()。
A. 0.00f8.9e''
B. """a""3.9E-2.51e1'\""'"
C. 3'0110xFF000a
D. 001E140xabcd2e250.I14
?
正确答案:D
2.若有以下定义:intm=7,n=12;则能得到值为3的表达式是()。
A. n%=(m%=5)
B. n%=(m-m%5)
C. n%=m-m%5
D. (n%=m)-(m%=5)
?
电子科技大学19秋《C语言》在线作业1答案
![电子科技大学19秋《C语言》在线作业1答案](https://img.taocdn.com/s3/m/dbbe2c8bf8c75fbfc67db20d.png)
电子科技大学19秋《C语言》在线作业1试卷总分:100 得分:100【题目】下面程序的运行结果是()【题目】main()【题目】{inta[6],i;for(i=1;i6;i++)【题目】{a[i]=9*(i-2+4*(i3))%5;printf("%2d",a[i]);}}[A.]—40404[B.]—40403[C.]一40443[D.]一40440[分析以上题目,并完成作答]正确答案:C【题目】enum color{red,green,yellow=5,white,black}定义了一枚举类型。
编译程序为值表中各标识符分配的枚举值依次为()[A.]1、2、3、4、5[B.]0、1、5、2、3[C.]0、1、5、6、7[D.]3、4、5、6、7[分析以上题目,并完成作答]正确答案:C【题目】下面程序段的循环次数是()【题目】intk=2;【题目】while(k==0)printf(″%d″,k);【题目】k--;printf(″\n″);[A.]0次[B.]1次[C.]2次[D.]无限次[分析以上题目,并完成作答]正确答案:A【题目】若运行以下程序时,从键盘输入ADescriptorCR(CR表示回车),则下面程序的运行结果是()【题目】#includestdio.h【题目】main()【题目】{charc;intv0=0,v1=0,v2=0; 【题目】do【题目】{switch(c=getchar())【题目】{case'a':【题目】case'A':【题目】case'e':【题目】case'E':【题目】case'i':【题目】case'I':【题目】case'o':【题目】case'O':【题目】case'u':【题目】case'U':vl+=1;【题目】de[A.]v0=7,v1=4,v2=7[B.]v0=8,v1=4,v2=8[C.]v0=11,v1=4,v2=11[D.]v0=12,vl=4,v2=12[分析以上题目,并完成作答]正确答案:D【题目】main函数的正确说明形式是()[A.]main(intargc,char*argv)[B.]main(intabc,char**abv)[C.]main(intargc,charargv)[D.])main(intc,charv[])[分析以上题目,并完成作答]正确答案:B【题目】若有定义:inta[2][3],则对a数组的第i行j列元素地址的正确引用为()[A.]*(a[i]+j)[B.](a+i)[C.]*(a+j)[D.]a[i]+j[分析以上题目,并完成作答]正确答案:A【题目】下面程序的功能是计算正整数2345的各位数字平方和,请选择填空()【题目】#includestdio.h【题目】main()【题目】{intn,sum=0;【题目】n=2345【题目】do{sum=sum+(n%10)*(n%10);【题目】n=【】;【题目】}while(n);【题目】printf("sum=%d",sum);}[A.]n/1000[B.]n/100[C.]n/10[D.]n%10[分析以上题目,并完成作答]正确答案:C【题目】下述关于条件语句的描述中错误的是()[A.]if语句中只有一个else子句[B.]if语句中可以有多个elseif子句[C.]if语句中if体内不能有switch语句[D.]if语句的if体中可以是循环语句[分析以上题目,并完成作答]正确答案:C【题目】以下符合C语言语法的赋值表达式是()[A.]d=9+e+f=d+9[B.]d=9+e,f=d+9[C.]d=9+e,e++,d+9[D.]d=9+e++=d+7[分析以上题目,并完成作答]正确答案:B【题目】若有说明:char*language[]={"FORTRAN","BASIC","PASCAL","JAVA","C"};【题目】则表达式*language[1]*language[3]比较的是()[A.]字符F和字符P[B.]字符串BAS1C和字符串JAVA[C.]字符B和字符J[D.]字符串FORTRAN和字符串PASCAL[分析以上题目,并完成作答]正确答案:C【题目】在下面C语言的函数说明语句中,正确的是()[A.]int fun(int , int);[B.]int fun(int x,y);[C.]int fun(x,y);[D.]int fun(int x; int y);[E.]int fun(int x,int y);[分析以上题目,并完成作答]正确答案:AE【题目】在函数调用过程中,下列说法正确的是()[A.]形式参数和实在参数各占一个独立的存储单元[B.]形式参数和实在参数存储空间都是在函数调用时分配的[C.])在函数的执行过程中,形参变量值的改变不会影响实参值的改变[D.]函数调用结束时,临时存储区被撤消[E.]在函数调用过程中,实在参数与形式参数在个数、类型上必须匹配[分析以上题目,并完成作答]正确答案:ACDE【题目】在定义函数时,函数的存储类型可以()[A.]是static[B.]是auto[C.]是register[D.]是extern[E.]省略[分析以上题目,并完成作答]正确答案:ADE【题目】下列符号中可以用作自定义函数名的是()[A.]int[C.]INT[D.]Getchar[E.]typedef[分析以上题目,并完成作答]正确答案:BCD【题目】以下哪些是关于指针数组的正确描述()[A.]int (*a)[4];[B.]int *a[4];[C.]指针数组每个元素都是指针变量[D.]若int a[4][4]; int *b[]={a[0],a[1],a[2],a[3]}; 则b是指针数组[E.]指针数组与指向数组的指针是等价的[分析以上题目,并完成作答]正确答案:BCD【题目】以数组名作函数参数时,数据传递的方向是“双向的”,因此我们可以说,在此情况下,函数带回的返回值可能不止一个。
c语言第一章课后习题答案
![c语言第一章课后习题答案](https://img.taocdn.com/s3/m/f631fc7b366baf1ffc4ffe4733687e21ae45ff11.png)
c语言第一章课后习题答案C语言第一章课后习题答案在学习C语言的过程中,课后习题是巩固知识、提高编程能力的重要环节。
通过练习习题,我们可以加深对C语言的理解,掌握编程技巧,提高解决问题的能力。
下面是C语言第一章课后习题的答案,希望能对大家的学习有所帮助。
1. 什么是C语言?C语言是一种通用的高级编程语言,它由美国贝尔实验室的Dennis Ritchie在20世纪70年代初设计的。
C语言具有高效、灵活、功能强大等特点,被广泛应用于系统软件、应用软件、嵌入式系统等领域。
2. 什么是变量?变量是一个可以存储数据值的内存位置。
在C语言中,变量需要先声明后使用,声明变量的语法为:数据类型变量名;例如:int num;3. 什么是数据类型?数据类型是指定变量存储数据类型的一种属性。
C语言中的数据类型包括基本数据类型和派生数据类型。
基本数据类型包括整型、浮点型、字符型和布尔型,派生数据类型包括数组、指针、结构体和联合体等。
4. 什么是常量?常量是指在程序运行过程中数值不发生改变的量。
在C语言中,常量可以分为整型常量、浮点型常量、字符常量和字符串常量等。
5. 什么是注释?注释是在程序中用来解释代码的文字,它不会被编译器编译,只是用来帮助程序员理解代码。
在C语言中,注释可以分为单行注释和多行注释,单行注释以//开头,多行注释以/*开头,以*/结尾。
通过学习C语言第一章课后习题的答案,我们可以更好地理解C语言的基本概念和语法规则,为接下来的学习打下坚实的基础。
希望大家能够认真对待课后习题,不断提高自己的编程能力,成为优秀的程序员。
《C语言程序设计》在线作业一 满分标准答案
![《C语言程序设计》在线作业一 满分标准答案](https://img.taocdn.com/s3/m/2048086da8956bec0975e3e5.png)
HomeWorkId:6ec3c534-e0f1-49ee-8f40-57b50c221e00ExamTaskId:6df3a970-ce40-4800-a2f4-839ff8136dc5《C语言程序设计》在线作业一1:下列关于指针定义的描述中错误的是()。
A:指针是一种变量,用于存放变量的地址。
B:指针变量的类型与它所指向的变量类型一致。
C:指针变量的命名规则与标识符相同。
D:定义指针时,标识符前的“*”号表示指针所指向的内容。
正确答案:D2:合法的字符型常数是()。
A:A'B:"A"C:65D:A正确答案:A3:设x,y,z,k都是int型变量,则执行表达式x=(y=4,z=16,k=32)后,x的值为()。
A:4B:16C:32D:52正确答案:C4:正确的用户标识符是()。
A:voidB:c5_b8C:forD:3a正确答案:B5:c语言中int型数-8在内存中的存储形式为()。
A:1111111111111000B:1000000000001000C:0000000000001000D:1111111111110111正确答案:A6:设int a [9], *p=a;则不能表示a [1]地址的表达式为()。
A:p+1B:a+1C:a++D:++p正确答案:C7:设整型变量n的值为2,执行语句“n+=n-=n*n;”后,n的值是()。
A:0B:4C:-4D:2正确答案:C8:对于struct ex{ int x;float y;char z;}example;则下面的叙述中不正确的是()。
A:struct是结构体类型的关键字B:example是结构体类型名C:x,y,z都是结构体成员名D:struct ex是结构体类型正确答案:B9:设int x=3,y=4,z=5;则值为0的表达式是()。
A:x>y++B:x<=++yC:x!=y+z>y-zD:y%z>=y-z正确答案:A10:一个C语言程序是由()构成。
(word完整版)C语言程序设计课后习题1-8参考答案
![(word完整版)C语言程序设计课后习题1-8参考答案](https://img.taocdn.com/s3/m/2d5c3d71e3bd960590c69ec3d5bbfd0a7856d55d.png)
C语言程序设计课后习题1—8参考答案习题1参考答案一、简答题1、冯诺依曼计算机模型有哪几个基本组成部分?各部分的主要功能是什么?答:冯诺依曼计算机模型是由运算器、控制器、存储器、输入设备、输出设备五大功能部件组成的。
运算器又称算术逻辑部件,简称ALU,是计算机用来进行数据运算的部件。
数据运算包括算术运算和逻辑运算。
控制器是计算机的指挥系统,计算机就是在控制器的控制下有条不紊地协调工作的.存储器是计算机中具有记忆能力的部件,用来存放程序和数据.输入设备是用来输入程序和数据的部件。
输出设备正好与输入设备相反,是用来输出结果的部件。
2、简述计算机的工作原理。
答:计算机的工作原理可简单地概括为:各种各样的信息,通过输入设备,进入计算机的存储器,然后送到运算器,运算完毕把结果送到存储器存储,最后通过输出设备显示出来。
整个过程由控制器进行控制。
3、计算机软件系统分为哪几类?答:软件内容丰富,种类繁多,通常根据软件用途将其分为两大类:系统软件和应用软件。
系统软件是指管理、监控、维护计算机正常工作和供用户操作使用计算机的软件。
这类软件一般与具体应用无关,是在系统一级上提供的服务。
系统软件主要包括以下两类:一类是面向计算机本身的软件,如操作系统、诊断程序等。
另一类是面向用户的软件,如各种语言处理程序(像BC、VC等)、实用程序、字处理程序等。
在操作系统的基础上运行。
4、什么叫软件?说明软件与硬件之间的相互关系。
答:软件是指计算机程序及有关程序的技术文档资料。
两者中更为重要的是程序,它是计算机进行数据处理的指令集,也是计算机正常工作最重要的因素。
在不太严格的情况下,认为程序就是软件。
硬件与软件是相互依存的,软件依赖于硬件的物质条件,而硬件则需在软件支配下才能有效地工作.在现代,软件技术变得越来越重要,有了软件,用户面对的将不再是物理计算机,而是一台抽象的逻辑计算机,人们可以不必了解计算机本身,可以采用更加方便、更加有效地手段使用计算机。
c语言第1章作业参考答案.doc
![c语言第1章作业参考答案.doc](https://img.taocdn.com/s3/m/aa4899f5b52acfc788ebc981.png)
Chapter 1参考答案1.什么是程序?什么是程序设计?答:程序(program)是使电子计算机执行一个或多个操作,或执行某一任务,而用计算机语言编写的语句和指令的集合。
一般分为系统程序和应用程序两大类。
计算机中的程序在港澳台地区称为程式。
程序设计(Programming)是给出解决特定问题程序的过程,是软件构造活动中的重要组成部分。
程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。
程序设计过程应当包括分析、设计、编码、测试、排错等不同阶段。
2.为什么需要计算机语言?高级语言的特点?答:人要利用计算机来完成指定的工作,必须和计算机交流信息,因此需要创造有一种计算机和人都能识别的语言,就是计算机语言。
高级语言很接近于人们习惯使用的自然语言和数学语言。
它允许用英文写解题的计算程序,程序中所使用的运算符号和运算式子,都和我们日常用的数学式子差不多。
高级语言容易理解,通用性强,书写出的程序不依赖于具体机器,它与具体机器距离较远。
3.名词及其含义:(1)C源程序(Source Code Program):是指未编译的按照C程序设计语言规范书写的文本文件,后缀为.c。
C目标程序(Object Code Program):由C语言编译程序将C源程序进行编译后生成的与源程序等价的机器码构成的程序,后缀为.obj。
可执行程序:由C语言连接程序将所有源程序编译后得到的目标模块连接装配起来,再与函数库相连接成一个整体,所生成的计算机能够直接运行的程序,后缀为.exe。
(2)程序编辑(program edition)):用高级语言将将完成一件工作所需要的步骤,按照一定的程序结构描述出来的过程。
程序编译(program compilation):用户使用编译程序对其个人编制的源程序进行转换,生成机器码的过程称为程序编译。
程序连接(program linking):将所有源程序编译后得到的目标模块连接装配起来,再与函数库相连接成一个整体,生成的计算机能够直接运行的程序的过程。
C语言课后习题答案(第1-8章)
![C语言课后习题答案(第1-8章)](https://img.taocdn.com/s3/m/c3d8df194a73f242336c1eb91a37f111f1850d86.png)
C语言课后习题答案(第1-8章)1.有的编程题答案有多种,只给出一种参考答案。
2.结合课本学习编程思想与技巧。
第一章C语言概述一、简答题1.(1)语言简洁、紧凑,使用方便、灵活;(2)运算符丰富;(3)具有丰富的数据类型;(4)具有结构化的控制语句;(5)语法限制不太严格,程序设计自由度大;(6)C语言允许直接访问物理地址,能进行位(bit)操作,能实现汇编语言的大部分功能,可以直接访问硬件;(7)生成目标代码质量高,程序执行效率高;(8)用C 语言写的程序可移植性好,基本上不作修改就能用于各种型号的计算机和各种操作系统。
2.顺序结构,分支结构,循环结构3.所谓算法就是为解决一个问题而采取的方法和步骤。
算法的特性:有穷性、确定性、输入、输出、可行性。
表示算法的方式:(1)用自然语言表示;(2)用流程图表示;(3)用N—S流程图表示;(4)用伪代码表示;(5)用计算机语言表示。
二、算法1.瓶子A里盛有醋瓶子B里盛有酱油有一个空瓶C将A中的醋倒入C将B中的酱油倒入A将C中的醋倒入B2.输入一个数放在a中max = a以下步骤重复9次:输入一个数放在a中如果a>max,max=a打印max的值3.如果a<b< bdsfid="85" p=""></b<>temp=aa=bb=temp如果c>atemp = aa=cc=temp否则如果c>btemp=bb=cc=temp打印a,b,c的值4.i=1sum=0以下程序循环100遍: sum=sum+i i=i+1 打印sum 的值5.如果(n 除以3的余数为0 并且 n 除以5的余数为0)n 能够同时被3和5整除否则 n 不能够同时被3和5整除 6.i=101以下语句循环50遍:j=2 flag=1 当j<(i 除以2的整数部分)时循环以下语句:如果i 除以j 的余数为零flag=0 退出该循环如果flag==1 打印i 的值 i=i+2 7.如果m做以下循环,直到m,n 能够被i 整除:如果m 能够被i 整除并且n 能够被i 整除 i 即是m 和n 的最大公约数跳出循环否则 i=i-1 打印i 的值8.data=b*b —4*a*c 如果data >0否则如果data=0 x1=x2=—b/2 否则无实数解三、编程题1.main () { a data b x 2)(1+-=adata b x 2)(2--=printf(“How do you do?\n”);printf(“##############################\n”);}2.main(){int a,b,c;scanf(“%d%d%d”,&a,&b,&c);printf(“sum=%d”,a+b+c);}第二章数据类型与表达式一、单项选择题1. B2. C3. A4. A5. D6. B7.A8.C9.D二、写出下列程序的运行结果1.aabb cc abcAN2.ab97983. 9,11,9,104.a=2,b=3,c=25.s1=2.500000s2=3三、编程题main(){char c1='c',c2='h',c3='i',c4='n',c5='a';c1=c1+4;c2=c2+4;c3=c3+4;c4=c4+4;c5=c5+4;printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);}第三章顺序程序设计选择题1)B 2)D 3)D 4)A 5)A 6)B 7)B 8)A 9)D 10)C 11)D 12)A填空题1)b 2)261 3)25 21 37 4)abc 5)5.0,4,c=3 6)3编程题#define PI 3.1415926main( ){float h, r, l, sv, sz ;printf(“请输入圆的半径r,圆柱高h:\n”) ;scanf(“%f,%f”,&r, &h) ;l=2* PI *r ;s= PI *r*r ;sv=3.0/4.0* PI *r*r*r ;sz= PI *r*r*h ;printf(“圆周长为:l=%6.2f, 圆面积为:s=%6.2f\n”, l, s) ;printf(“求体积为:sv=%6.2f, 圆柱体积为:sz=%6.2f\n”, sv, sz) ;}2、main( ){float c, f ;printf(“请输入一个华氏温度:\n”) ;scanf(“%f”, &f) ;c=5.0/9.0*(f-32) ;printf(“摄氏温度为:%6.2f\n”, c) ;}第四章循环程序设计一、选择题1.D2.D3.D4.C5.D6.A7.B8.B9.A 10.D.11.B 12.A 13.B 14.C 15.C 16.A 17.A 18.B 19.D 20.D21.A二、填空题1.5858582.03.184.89215.20,06.67.1,3,28.Year%400==0year%100!=0count++三、编程题1.main(){long a;scanf(“%ld”,&a);if (a>=10000&&a<=99999) printf(“这是个五位数”);else if (a>=1000&&a<=9999) printf(“这是个四位数”);else if (a>=100&&a<=999) printf(“这是个三位数”);else if (a>=10&&a<=99) printf(“这是个二位数”);else if (a>=0&&a<=9)printf(“这是个一位数”);elseprintf(“输入错误”);}3.main(){int a;int g,s,b;//个位、十位、百位printf("水仙花数有:\n"); for(a=100;i<=999;a++){g=a%10;s=a/10%10;b=a/100;if (a==g*g*g+s*s*s+b*b*b) printf("%d ",a);}printf("\n");}4、main(){int i,n;printf("input n:");scanf("%d",&n);printf("\n%d=",n);for(i=2;i<=n;i++){while(i!=n)if(n%i==0){printf("%d*",i);n/=i;} else break;}printf("%d\n",n);}5、#include “stdio.h”main(){char c;int w,x,y,z;w=x=y=z=0;while((c=getchar())!=’\n’){if((c>’a’&&c<’z’)||(c>’A’&&c<’Z’)) w++;else if (c==’’)x++;else if (c>’0’&&c<’9’)y++;else z++;}printf(“英文字母个数:%d\n”,w); printf(“空格个数:%d\n”,x);printf(“数字个数:%d\n”,y);printf(“其他字母个数:%d\n”,z); }6、main(){float h=100,t=100;int j;for(j=1;j<10;j++){t=t/2;h=h+t*2;}printf(“共经过:%f 米\n”,h); printf(“第十次反弹%f 米\n”,t/2); }第五章数组一、单项选择题1. B2. A3. C4. C5. D6. B7.C8.B9.C 10. B二、写出下列程序的运行结果1.S=3682.*************************3.S1=18S2=104.!margorP5.数字0的出现次数是:3数字1的出现次数是:2数字2的出现次数是:2数字3的出现次数是:2数字4的出现次数是:0数字5的出现次数是:1数字6的出现次数是:1数字7的出现次数是:1数字8的出现次数是:1数字9的出现次数是:1 三、编程题1.#include "stdio.h" main(){int a[11];int i,j,t;printf("input 10 number:\n");for (i=1;i<11;i++)scanf("%d",&a[i]);printf("\n");for (i=1;i<=9;i++)for (j=1;j<=10-i;j++)if (a[j]<a[j+1])< bdsfid="320" p=""></a[j+1])<> {t=a[j];a[j]=a[j+1];a[j+1]=t;}printf("the sorted number is:\n");for (i=1;i<11;i++)printf("%4d",a[i]);}2.#include "stdio.h"main(){int a[11],i,b;printf("imput 10 sorted number:\n");for (i=0;i<10;i++)scanf("%d",&a[i]);printf("input an integer:\n");scanf("%d",&b);for (i=9;i>=0&&a[i]>b;i--)a[i+1]=a[i];a[i+1]=b;printf("sorted numbers:\n");for (i=0;i<11;i++)printf("%5d",a[i]);}3.#include "stdio.h"main(){int a[5],i,j,t;printf("input 5 integer:\n");for (i=0;i<5;i++) /*输入5个整数*/scanf("%d",&a[i]);for (i=0,j=4;i<="" bdsfid="348" p="">{t=a[i];a[i]=a[j];a[j]=t;}for (i=0;i<5;i++) /*逆序存放后重新输出*/printf("%5d",a[i]);}4.#include "stdio.h"main(){int i,j,a[10][10]={{1},{1,1}};for (i=2;i<10;i++) /*给二维数组每个元素赋值*/ {a[i][0]=1; for (j=1;j<=i;j++)a[i][j]=a[i-1][j-1]+a[i-1][j];}for (i=0;i<10;i++) /*输出二维数组*/{for (j=0;j<=i;j++)printf("%-5d",a[i][j]);printf("\n");}}5.#include "stdio.h"main(){int a[3][4],i,j,max,row,col;printf("input 3*4 matrix:\n");for (i=0;i<3;i++) /*输入3*4矩阵*/for (j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0]; row=0; col=0;for (i=0;i<3;i++) /*寻找矩阵中的最大值及其行列号*/ for (j=0;j<4;j++)if (max<a[i][j])< bdsfid="376" p=""></a[i][j])<>{max=a[i][j]; row=i, col=j;}printf("\n数组中最大的数是%d,其行号是%d,列号是%d\n",max,row,col);}6.#define N 3#define M 4#include "stdio.h"main(){int a[N][M],i,j,k,max,row,col;printf("input %d*%d matrix: \n",N,M);for (i=0;i<="" bdsfid="387" p="">for (j=0;j<m;j++)< bdsfid="389" p=""></m;j++)<>scanf("%d",&a[i][j]);for (i=0;i<="" bdsfid="392" p="">{max=a[i][0]; row=i; col=0;for(j=1;j<a[i][j])<="" *求矩阵中每一行的最大值及其所行列号*="" bdsfid="395" if="" p="">{max=a[i][j]; col=j;}for (k=0;k<max)<="" *判断每一行的最大值在其所在列是否最大*="" bdsfid="398" if="" p="">break;if (k==N) /*得到鞍点*/{printf("the point is %d,row=%d,col=%d\n",max,row,col);break;}}if (i==N) /*没有鞍点*/printf("no point\n");}7.#include "stdio.h"{int num=0,word=0;/*word=0表示未出现单词,如出现单词就置word为1.num用来统计单词个数*/char c;printf("please input a string :\n");while ((c=getchar())!='\n')if (c==' ')word=0;else if (word==0){word=1; num++;}printf("There are %d words in the line\n",num);}8.#include "stdio.h"main(){int i,j,uppn,lown,dign,span,othn;/*uppn,lown,dign,span,othn分别存放英文大写字母、小写字母、数字、空格和其他字符的个数*/char text[3][80];uppn=lown=dign=span=othn=0;for(i=0;i<3;i++){gets(text[i]);for(j=0;j<80&&text[i][j]!='\0';j++){if(text[i][j]>='A'&&text[i][j]<='Z')uppn++;else if(text[i][j]>='a'&&text[i][j]<='z')lown++;else if(text[i][j]>='0'&&text[i][j]<='9')dign++;else if(text[i][j]==' ')span++;elseothn++;}}for(i=0;i<3;i++)printf("%s\n",text[i]);printf("uppn=%d\n",uppn);printf("lown=%d\n",lown);printf("dign=%d\n",dign);printf("span=%d\n",span);printf("othn=%d\n",othn);}9.#include "stdio.h"{int i,j;char str1[20],str2[20];printf("input two strings:\n");gets(str1);gets(str2);j=strlen(str1); /*求字符串1的长度*/for (i=0;str2[i]!='\0';i++,j++) /*字符串合并*/ str1[j]=str2[i];str1[j]='\0'; /*加上字符串结束标志*/puts(str1);}10.#include "stdio.h"main(){int i,n;char str1[20],str2[20];printf("input two strings:(no more than 20 characters)\n"); gets(str1); gets(str2);n=strlen(str1)printf("%d\n",str1[i]-str2[i]);}第六章函数与编译预处理一、单项选择题1. C2. B3. B4. B5. A6. B7.A8.C9.D 10. A二、写出下列程序的运行结果1.92.4,B8,B3.-4.0000004.a=6,b=55.48三、编程题1.main(){ int prime(int n);int n;printf("input n(n>0):\n");scanf("%d",&n);if (prime(n))printf("%d is a sushu\n",n);else printf("%d is not a sushu\n",n); }int prime(int n){int flag=1,i;for (i=2;i<=n/2&&flag==1;i++)if (n%i==0) flag=0;return(flag);}2.#define N 3convert(int array[3][3]){ int i,j,t;for (i=0;i<n-1;i++)< bdsfid="507" p=""></n-1;i++)<> for (j=i+1;j<n;j++)< bdsfid="509" p=""></n;j++)<> {t=array[i][j];array[i][j]=array[j][i];array[j][i]=t;}}main(){int i,j;int a[N][N];printf("input a:\n");for (i=0;i<n;i++)< bdsfid="520" p=""></n;i++)<>for (j=0;j<n;j++)< bdsfid="522" p=""></n;j++)<> scanf("%d",&a[i][j]);printf("Array a:\n");for (i=0;i<n;i++)< bdsfid="526" p=""></n;i++)<> {for (j=0;j<n;j++)< bdsfid="528" p=""></n;j++)<> printf("%5d",a[i][j]);printf("\n");}convert(a);printf("a de zhuanzhi is:\n");for (i=0;i<n;i++)< bdsfid="535" p=""></n;i++)<>{for (j=0;j<n;j++)< bdsfid="537" p=""></n;j++)<>printf("%5d",a[i][j]);printf("\n");}}3. #include#includemain(){char str[100];printf("input a string:\n") ;gets(str);inverse(str);printf("the reversed string is:%s\n",str);}inverse(char str[]){char t;int i,j;for (i=0,j=strlen(str)-1;i<j;i++,j--)< bdsfid="558" p=""></j;i++,j--)<>{t=str[i];str[i]=str[j];str[j]=t;}4. #includeconcat(char str1[],char str2[]){ int i=0,j;while (str1[i]!='\0')i++;for (j=0;str2[j]!='\0';i++,j++)str1[i]=str2[j];str1[i]='\0';}main(){char str1[100],str2[100];gets(str1);gets(str2);concat(str1,str2);puts(str1);}5. main(){char str[80];printf("input a string (4 ge shu zi zi fu):\n"); scanf("%s",str); insert(str);printf("result is:\n%s\n",str);}insert(char str[]){int i;for (i=strlen(str);i>0;i--){str[2*i]=str[i];str[2*i-1]=' ';}6. #include "stdio.h"int i,ndight,nwhite,nletter,nother;count(char str[]){ndight=nwhite=nletter=nother=0;for (i=0;str[i]!='\0';i++)if (str[i]>='0'&&str[i]<='9')ndight++;else if ((str[i]>='A'&&str[i]<='Z')||(str[i]>='a'&&str[i]<='z')) nletter++;else if (str[i]==' ')nwhite++;else nother++;}main(){char text[80];printf("input a string:\n");gets(text);count(text);printf("ndight=%d,nletter=%d,nwhite=%d,nother=%d\n",n dight,nletter,nwhite,nother); }7. #define N 10#includesort(char str[]){int i,j;char t;for (i=1;i<n;i++)< bdsfid="625" p=""></n;i++)<>for (j=0;j<n-i;j++)< bdsfid="627" p=""></n-i;j++)<> if (str[j]>str[j+1]){t=str[j];str[j]=str[j+1] ;str[j+1]=t;}}main(){char str[N];int i ;printf("Input 10 ge zi fu:\n");gets(str);printf("The sorted result:\n") ;for(i=0;i<n;i++)< bdsfid="639" p=""></n;i++)<> printf("%c",str[i]);}8.这题较复杂#include#include#define N 10void input_e(int num[],char name[N][8]){int i;for (i=0;i<n;i++)< bdsfid="651" p=""></n;i++)<> { printf("input gong hao:");scanf("%d",&num[i]);printf("input name:");getchar();gets(name[i]);}for (i=0;i<n;i++)< bdsfid="659" p=""></n;i++)<> printf("%5d%10s\n",num[i],name[i]);}void sort(int num[],char name[N][8]) /*选择法排序*/{int i,j,min,temp1;char temp2[8];for (i=0;i<n-1;i++)< bdsfid="666" p=""></n-1;i++)<> {min=i;for (j=i+1;j<n;j++)< bdsfid="669" p=""></n;j++)<>if (num[j]temp1=num[i];strcpy(temp2,name[i]);num[i]=num[min];strcpy(name[i],name[min]);num[min]=temp1;strcpy(name[min],temp2);}printf("the sorted result:\n");for (i=0;i<n;i++)< bdsfid="681" p=""></n;i++)<>printf("%5d%10s\n",num[i],name[i]);}void search(int n,int num[],char name[N][8]) /*折半查找法*/ { int top,bott,mid,find;bott=N-1;if ((nnum[N-1]))find=-1;while ((find==0)&&(top<=bott)){mid=(bott+top)/2;if (n==num[mid]){find=1; printf("%d name is:%s\n",n,name[mid]);}else if (n<num[mid])< bdsfid="695" p=""></num[mid])<> bott=mid-1;else top=mid+1;}if ((find==-1)||(find==0))printf("%d is not found.\n",n);}main(){int num[N],number,c,flag;char name[N][8];input_e(num,name);sort(num,name);for (flag=1;flag;){printf("please input chazhao de gonghao:"); /*输入查找的工号*/ scanf("%d",&number);search(number,num,name);printf("continue Y/N?"); /*是否继续查找*/getchar();c=getchar();if (c=='N'||c=='n')flag=0;}}9. #include "stdio.h"#define MAX 10main(){char str[MAX];char c;int i;i=0;printf("input number(16 jinzhi): "); /*输入一个十六进制的数*/while((c=getchar())!='\n'&&i<max)< bdsfid="727" p=""></max)<>{ str[i]=c;i++;printf("result is :%d\n",htod(str));}int htod(char s[]){int i,n;n=0;for(i=0;s[i]!='\0';i++){if (s[i]>='0'&&s[i]<='9')n=n*16+s[i]-'0';if (s[i]>='a'&&s[i]<='f')n=n*16+s[i]-'a'+10;if (s[i]>='A'&&s[i]<='F')n=n*16+s[i]-'A'+10;}return(n);}10. #define SW AP(a,b) t=a;a=b;b=t main(){int a,b,t;printf("input a,b:") ;scanf("%d,%d",&a,&b);SW AP(a,b);printf("result:a=%d,b=%d\n",a,b);}11. #define SURPLUS(a,b) ((a)%(b)) main(){int a,b;printf("input a,b:");scanf("%d,%d",&a,&b);printf("result is: %d\n",SURPLUS(a,b)); } 12. main(){int a,b,c;printf("input a,b,c:");scanf("%d,%d,%d",&a,&b,&c);printf("max=%d\n",max(a,b,c));}int max(int x,int y,int z){int t;t=(x>y ? x : y);return(t>z?t:z);}#define MAX(x,y) ((x)>(y)?(x):(y)) main(){int a,b,c;printf("input a,b,c:");scanf("%d,%d,%d",&a,&b,&c);printf("max=%d\n",MAX(MAX(a,b),c)); }13. #include "stdio.h"#define CHANGE 1#define MAX 80main(){char str[MAX];int i;printf("input a string:\n");gets(str);#if (CHANGE){ for (i=0;str[i]!='\0';i++)if (str[i]>='a'&&str[i]<'z'||str[i]>='A'&&str[i]<'Z')str[i]=str[i]+1;else if (str[i]=='z'||str[i]=='Z')str[i]=str[i]-25;}#endifprintf("%s\n",str);}第七章指针一、选择题1)A 2)D 3)D 4)C 5)B 6)B 7)B 8)C 9)B 10)C 11)A 12)A 13)A 14)C 15)B 16)A 17)C 18)B 19)D 20)B二、阅读下面程序,写出程序运行结果1)abcdeedcba 2)1113151719 3)(TurboC中是11,9 7,11 )(VisualC是9,9 7,11)4)3 6 5)6385三、编程题1、main( ){ int a[10],i,temp,*p=a;printf("Please input array a:\n"); for(i=0;i<10;i++) scanf("%d",&a[i]);printf("array a:\n");for(i=0;i<10;i++)printf("%4d",a[i]);for(i=0;i<5;i++){ temp=p[i];p[i]=p[10-i-1];p[10-i-1]=temp;}printf("\n Now array a:\n");for(i=0;i<10;i++)printf("%4d",a[i]);}2、main( ){ int a[3][3],*p,i,j;printf("please input matrix:\n"); for(i=0;i<3;i++) for(j=0;j<3;j++)scanf("%d",&a[i][j]);p=&a[0][0];move(p);printf("\n Now matrix:\n");for(i=0;i<3;i++){ for(j=0;j<3;j++)printf("%4d",a[i][j]);printf("\n");}}move(int *q){ int i,j,t;for(i=0;i<3;i++)for(j=i;j<3;j++){ t=*(q+3*i+j);*(q+3*i+j)=*(q+3*j+i); *(q+3*j+i)=t;}}3、#include#include。
电子科技大学14秋《C语言》在线作业1答案
![电子科技大学14秋《C语言》在线作业1答案](https://img.taocdn.com/s3/m/e2c83e2caaea998fcc220e27.png)
14秋《C语言》在线作业1一,单选题1. putchar函数可以向终端输出一个( )A. 整型变量表达式值B. 实型变量值C. 字符串D. 字符或字符型变量值?正确答案:D2. C语言规定:在一个源程序中,main函数的位置是( )A. 必须在最开始B. 必须在系统调用的库函数的后面C. 可以任意D. 必须在最后?正确答案:C3. 有以下程序,其中函数f的功能是将多个字符串按字典顺序排序#include<string.h> void f(char *p[],int n) { char *t; int i,j; for(i=0; i<n-1; i++) for(j=i+1;j<n; j++) if(strcmp(p[i],p[j])>0){t = p[i];p[i]=p[j];p[j] =t;} } main( ) { char *p[5] ={“abc”,“aabdfg”,“abbd”,“dcdbe”,“cd”}A. 2B正确答案:D4. 若有定义:int a[2][3],则对a数组的第i行j列元素地址的正确引用为( )A. *(a[i]+j)B. (a+i)C. *(a+j)D. a[i]+j?正确答案:A5. 以下描述中正确的是( )A. 由于do~while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句B. do~while循环由do开始,用while结束,在while(表达式) 后面不能写分号C. 在do~while循环体中,一定要有能使while后表达式值变为零("假")的操作D. do~while循环中,根据情况可以省略while?正确答案:C。
c语言作业答案
![c语言作业答案](https://img.taocdn.com/s3/m/0fcaf1c2162ded630b1c59eef8c75fbfc77d9466.png)
c语言作业答案No.: Name:第1讲C语言概述注:本系列习题中符号表示一串字符中的空格,符号表示下划线,符号ê表示换行回车,即键盘上Enter键。
一、选择题1. 一个C程序的执行是从A 。
A) 本程序main函数开始,到main函数结束B) 本程序文件第一个函数开始,到最后一个函数结束C) 本程序文件第一个函数开始,到本main函数结束D) 本程序main函数开始,到本程序文件最后一个函数结束2. 以下叙述不正确的是D 。
A) 一个C源程序必须包含一个main函数B) 一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数D) 在C程序中,注释说明只能位于一条语句的后面3. 以下叙述正确的是C 。
A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面C) 语言本身没有输入输出语句D) C程序的每行中只能写一条语句4. 一个C语言程序是由B 。
A) 一个主程序和若干个子程序组成B) 函数组成C) 若干过程组成D) 若干子程序组成5. 以下叙述中正确的是C 。
A) C语言比其他语言高级B) C语言可以不用编译就能被计算机识别执行C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D) C语言出现的最晚,具有其他语言的一切优点6. 下列叙述中正确的是D 。
A) C语言编译时不检查语法B) C语言的子程序有过程和函数两种C) C语言的函数可以嵌套定义D) C语言的函数可以嵌套调用7. 以下叙述中正确的是A 。
A) 构成C程序的基本单位是函数B) 可以在一个函数中定义另一个函数C) main函数必须放在其他函数之前D) 所有被调用的函数一定要在调用之前进行定义8. C语言规定,在源程序中,main函数的位置C 。
A) 必须在最开始B) 必须在系统调用的库函数的后面C) 可以任意D) 必须在最后9. 下列选项中不是结构化程序基本结构的是B 。
14秋地大《C语言程序设计(新)》在线作业一答案
![14秋地大《C语言程序设计(新)》在线作业一答案](https://img.taocdn.com/s3/m/0959c1e56294dd88d0d26b9d.png)
地大《C语言程序设计(新)》在线作业一
一,单选题
1. 使用putchar函数输出字符,自变量不可以是:
A. 整型
B. 字符型
C. 常量
D. 实型数据
?
正确答案:D
2. 结构化程序设计的基本结构不包含以下哪项()
A. 顺序
B. 选择
C. 跳转
D. 循环
?
正确答案:C
3. 以下对C语言函数的有关描述中,正确的是:______。
()
A. 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B. 函数既可以嵌套定义又可以递归调用
C. 函数必须有返回值,否则不能使用函数
D. 程序中有调用关系的所有函数必须放在同一个源程序文件中
?
正确答案:A
4. 有以下程序片段int n=0,p; do { scanf(%d",&p); n++; } while(p!=12345&&n<3); 此处do-while 循环的结束条件是()
A. p的值不等于12345并且n的值小于3
B. p的值等于12345并且n的值大于等于3
C. p的值不等于12345或且n的值小于3
D. p的值等于12345或且n的值大于等于3
?
正确答案:D
5. C浯言中函数能否嵌套调用和递归调用
A. 二者均不可
B. 前者可,后者不可
C. 前者不可,后者可
D. 二者均可
?
正确答案:D。
网络大专C语言第一次作业及答案讲解
![网络大专C语言第一次作业及答案讲解](https://img.taocdn.com/s3/m/1e6e482327284b73f24250a0.png)
<C 语言程序设计>第1次作业答案一、 单项选择题(本大题共19小题)1.C 语言规定:在一个源程序中,main 函数的位置( )。
[C]A )必须在最开始B )必须在系统调用的库函数的后面C )可以任意D )必须在最后2.一个C 语言程序是由( )。
[B]A )一个主程序和若干个子程序组成B )函数组成C )若干过程组成D )若干子程序组成3.C程序中,注释的内容写在( )。
[A]A )/*和*/之间B )\*和*\之间C )*/和/*之间D )*\和\*之间4.C 语言程序中每个语句和数据定义的最后必须有一个( )。
[A]A )分号B )逗号C )空格D )冒号5.若x 、i 、j 和k 都是int 型变量,则计算下面表达式后,x 的值为( )。
[C] X=(i=4,j=16,k=32)A )4B )16C )32D )526.不正确的变量说明是( )。
[C]A )unsigned int ui;B )short int s;C )double int A;D )int i,j,k;7.合法的C 语言程序标识只符是( )。
[C]A )5dmB )a>bC )HhD )$a8.不合法的字符常量是( )。
[C]A )’2’B )’\101’C )’ab ’D )’\n ’9.若有代数式bc ae 3,则不正确的表达式是( )。
[C]A )a/b/c*e*3B )3*a*e/b/cC )3*a*e/b*cD )a*e/c/b*310.以下选项中不合法的赋值语句是( )。
[C]A )c=(a=1,b=2);B )k=i=j;C )a=b+c=5;D )n1=(n2=(n3=0));11.若希望当A 的值为奇数时,表达式的值为“真”,A 的值为偶数时,表达式的值为“假”。
则以下不能满足要求的表达式是( )。
[C]A)A%2= =1 B) !(A %2 = =0) C)!(A%2) D)A%212.若w=1,x=2,y=3,z=4,则条件表达式w<x?x:y<z?y:z 的值是( )。
c语言全部章节习题答案
![c语言全部章节习题答案](https://img.taocdn.com/s3/m/dab7814b591b6bd97f192279168884868762b8f1.png)
c语言全部章节习题答案C语言是一门广泛应用于计算机编程的高级编程语言。
它的简洁和强大使得它成为了许多程序员的首选语言。
然而,学习一门新的编程语言并不总是容易的,特别是对于初学者来说。
为了帮助那些正在学习C语言的人们,本文将提供C语言全部章节习题的答案,以期为读者提供一些指导和帮助。
在学习C语言时,习题是巩固所学知识的重要方式。
通过解决习题,学生可以加深对C语言的理解,并提高他们的编程技能。
然而,有时候习题的解答并不容易找到,特别是对于初学者来说。
因此,本文将提供C语言教材中的全部章节习题的答案,以供读者参考。
在第一章中,我们学习了C语言的基本概念和语法。
习题主要涉及变量的声明和赋值,以及简单的算术运算。
以下是第一章习题的答案:1. 声明一个整型变量x,并将其赋值为10。
答案:int x = 10;2. 声明一个字符型变量ch,并将其赋值为'A'。
答案:char ch = 'A';3. 声明两个整型变量a和b,并将其相加的结果赋值给变量c。
答案:int a = 5;int b = 3;int c = a + b;第二章主要介绍了C语言中的控制结构,如条件语句和循环语句。
以下是第二章习题的答案:1. 编写一个程序,判断一个整数是否为偶数。
如果是偶数,输出"Even",否则输出"Odd"。
答案:#include <stdio.h>int main() {int num;printf("Enter an integer: ");scanf("%d", &num);if(num % 2 == 0) {printf("Even");} else {printf("Odd");}return 0;}2. 编写一个程序,计算1到100之间所有偶数的和。
北航14秋《C语言程序设计》在线作业一答案
![北航14秋《C语言程序设计》在线作业一答案](https://img.taocdn.com/s3/m/e0f4770052ea551810a687fd.png)
北航《C语言程序设计》在线作业一
单选题判断题
一、单选题(共10 道试题,共40 分。
)
1. 定义int x,y;执行y=(x=1,++x, x+2)语句后,y的值是( ).
A. 1
B. 2
C. 7
D. 4
-----------------选择:D
2. 当调用函数时,实参是一个数组名,则向函数传送的是( )
A. 数组的长度
B. 数组的首地址
C. 数组每一个元素的地址
D. 数组每个元素中的值
-----------------选择:B
3. 表达式:10!=9的值是( )
A. true
B. 非零值
C. 0
D. 1
-----------------选择:D
4. C语言中,长整型long数据在内存中的存储形式是( )。
A. ASCII
B. 原码
C. 反码
D. 补码
-----------------选择:D
5. 若有定义:int x; 要将x强制转换为双精度型,应该写成
A. x(double)
B. x(double)
C. (double)x
D. double(x)
-----------------选择:C
6. 设n=3;则执行++n语句后,n的值为_____。
()
A. 5
B. 4
C. 3
D. 2
-----------------选择:B
7. 下面程序的输出结果是__________. main() { int x=102,y=012; printf("%2d,%2d",x,y);}。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子科技《C语言》在线作业1
单选题
一、单选题(共 20 道试题,共 100 分。
)
1. 以下叙述中正确的是( )
A. 在程序的一行上可以出现多个有效的预处理命令行
B. 使用带参的宏时,参数的类型应与宏定义时的一致
C. 宏替换不占用运行时间,只占编译时间
D. 在以下定义中CR是称为"宏名"的标识符 #define C R 045
-----------------选择:C
2. 以下不正确的叙述是( )
A. 在C程序中,逗号运算符的优先级最低
B. 在C程序中,APH和aph是两个不同的变量
C. 若a和b类型相同,在执行了赋值表达式a=b后b中的值将放人a中,而b中的值不变
D. 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。
-----------------选择:D
3. 若有说明:int a[10];则对a数组元素的正确引用是( )
A. a[10]
B. a[3.5]
C. a(5)
D. a[10-10]
-----------------选择:D
4. 设有语句int a[4][10],*p=*a;则下面表达式中属于地址表达式的是( )
A. a[1][2]
B. a[1]
C. *(p+1*10+2)
D. *(a[1]+2)
-----------------选择:B
5. 有以下程序: union pw { int i; char ch[2];}a; main() {a.ch[0]=13;a.ch[1]=0;printf("%d\n",a.i);} 程序的输出结果是( )
A. 13
B. 14
C. 208
D. 209
-----------------选择:A
6. 以下for循环的执行次数是( ) for(x=0,y=0; (y=123)&&(x<4);x++);
A. 是无限循环
B. 循环次数不定
C. 执行4次
D. 执行3次。