C语言程序答案

合集下载

C语言程序设计教程答案

C语言程序设计教程答案

提示:printf("%s",x>60?"pass":"fail"); 3.17 输入一个年份 y,如果是闰年,输出“y is a leap
year”,否则输出“y is not a leap year.” 提示:printf("%d is
%s",y%4==0&&y%100!=0||y%400==0?"a leap year.":"not a leap year.");
2.6 变量的具有哪三种属性? 二、单项选择题
2.7 C 语言中,int 型数据在内存中的存储形式是 (D)。
A)ASCII 码 B)原码 C)反码 D)补码 2.8 下面四个选项中,均是不合法的用户标识符的选
项是(C)。 A)BA 、x_0、do B)float、1a0、_Y C)x-y、goto、123 D)_123、tmp、CHAR 2.9 下列选项中不正确的常数的选项是(D)。 A)0x12F B)-1.23E-2 C)12.0 D)0388 2.10 下面正确的字符常量是(B)。 A)"a" B)'\\' C)"\n" D)"\376"
sum=sum+c-'0'; 4.9 编程实现,求 的值。 提示:先计算 n!,再在计算阶乘的外面套上一层循环。 注意:20!是一个很大的值,float s=1;int i;例如:计
算 6!: for(i=1;i<=6;i++) s=s*i; 4.10 编程实现,找出 1000 之内的所有完数,并按下 面格式输出其因子:
应的百分制成绩段。 A: 90-100 B: 80-89 C: 70-79 D: 60-69 E: <60

C语言程序设计课后各章节习题答案

C语言程序设计课后各章节习题答案
答include"math.h"
main()
{
float x,y,d;
printf("Input x,y:");
scanf("%f,%f",&x,&y);
d=sqrt((x-2)*(x-2)+(y-2)*(y-2));
if(d>1)printf(ntf("inside");
}
12有一函数
x-1 -5<x<0
y= x x=0
x+1 0<x<8
编写一程序,要求输入x的值,输出y的值。分别用不嵌套的if语句,嵌套的if语句,switch语句编写。
答使用不嵌套的if语句程序如下:
main()
{
int x,y;
printf("Input x:");
scanf("%d",&x);
答main()
{
int x,a,b,c;
printf("Input number:");
scanf("%d",&x);
a=x/100;/*变量a中记录x的百倍数字*/
b=x/10%10;/*变量b中记录x的十位数字*/
c=x%10;/*变量c中记录x的个位数字*/
if(a*a*a+b*b*b+c*c*c==x)
if(m==2)
d=28+f;
else
d=31-(m==4)+(m==6)+(m==9)+(m==11);
printf("%d-%d is %d days.\n",y,m,d);

C语言程序设计答案-(陈明晰)中国铁道出版社

C语言程序设计答案-(陈明晰)中国铁道出版社

习题一一、选择题1.C程序的基本单位是(A)。

A.函数B.文件C.语句D.字符2.C程序中的变量(B)。

A.不用说明B.先说明后引用C.先引用后说明D.引用和说明顺序无关3.变量的说明在(B)。

A.执行语句之后B.执行语句之前C.执行语句当中D.位置无关4.C语言是一种(C)。

A.机器语言B.符号语言C.高级语言D.面向对象的语言二、填空题1.一个C程序总是从主函数开始执行。

2.结构化程序由顺序、选择、循环三种基本结构构成。

3.一个C程序只有一个名为main的主函数。

4.C程序中的每个语句以分号结束。

5.C程序中,函数由函数首部和函数体组成。

6.每个基本结构有一个入口和一个出口,没有死循环和死语句。

7.算法是计算机解决问题所依据的步骤。

习题二一、选择题1.下列数据中属于字符串常量的是( B)。

A.ABC B."ABC" C.'abc' D.'A'2.在计算机内存中,'\n'占用的字节数是( C)。

A.4 B.3 C.1 D.23.字符串"ABC"在内存中占用的字节数是( D)。

A.6 B.8 C.3 D.44.在C语言中,合法的长整型常数是( B)。

A.568701400 B.0L C.0.03546287D.2.654e115.char型常量在内存中存放的是( A)。

A.ASCII代码值B.BCD代码值C.十进制代码值D.内码值6.下列各项中正确的标识符是( D)。

A.?bb B.a=8 C. b.βD.b_47.下列不正确的转义字符是( D)。

A.\\ B.\ 0 C.\" D.0x48.设整型变量a、b的值均为5,则表达式(m=n=a++)/(n=b-2)的值为( B)。

A.0 B.1 C.2 D.39.设a的值为5,执行下列语句后,b的值不为2的是( C)。

A.b=a/2 B.b=6-(--a) C.b=a%2 D.b=(float)a/210.执行语句x=(a=3,b=a--)后,x、a、b的值依次是( C)。

《C语言程序设计教程》课后题答案

《C语言程序设计教程》课后题答案

《C语言程序设计教程》课后题答案第一章一选择题1.A2.B3.C4.D5.B6.C二.填空题1.程序2.算法3.main或主4.编译5.编译6. .obj7.库函数8.文本或ASCII码三、编程题1.参考代码如下:#include <stdio.h>void main(){printf("金\n木\n水\n火\n土\n");}2. 参考代码如下:#include <stdio.h>void main(){ int a,b;scanf("%d%d",&a,&b);printf("%d+%d=%d\n",a,b,a+b);printf("%d-%d=%d\n",a,b,a-b);printf("%d*%d=%d\n",a,b,a*b);printf("%d/%d=%d\n",a,b,a/b);}3. 参考代码如下:#include <stdio.h>void main(){float a,b,h,s;scanf("%f%f%f",&a,&b,&h);s=(a+b)*h/2;printf("s=%f\n",s);}第二章一选择题答案及分析:1.B,略2.A,-8在内存中是以补码(设两个字节)形式存储的3.A,C语言有32个关键字(参见课本第18页),且C语言标识符是区分大小写字母的4.A,略5.D,八进制数据中不能出现数码86.B,字符常量应该用单引号括起来,答案D超出了ASCII取值范围(ASCII的取值范围为[0,255])7.C,该字符串中转义字符有三个:\\、 \22和 \n,普通字符有三个:a、 ,和0,所以字符串长度为68.C,略9.D,C语言没有read函数和%D格式符号,且scanf函数第二个形参为地址列表10.B,根据题意,scanf函数输入数据时分隔符号不应该是逗号,应该是空格或回车符,且输入数据时分一行或几行均可11.A,scanf函数中不允许出现%8.4,%6.2和%8这样的格式符号12.C,既要保证5位小数位,还得保证整数位不变,这样数据12345.67800用10列不能完全显示出来,按C语言规定,12345.67800原样输出13.B,printf函数中格式符号%d,%o,%x表示对应的整型数据分别按十进制,八进制和十六进制输出14.C,按C语言规定,scanf函数形参双引号中,如果包含非格式符号,在输入数据时要求原样输入二.填空题答案及分析:1.int float double(略)2.65,89 ,printf函数中如果格式符号是%d,则输出相应字符的ASCII十进制数值3.a=98,b=765.000000,c=4321.000000,scanf函数中的格式符号%2d%3f%4f,表示将键盘输入的数据9876543210按2,3,4位分割,然后再分别赋给变量a,b,c4.scanf("%lf%lf%lf",&a,&b,&c); double类型的变量对应的格式符号是%lf三、编程题1. 参考代码如下:#include <stdio.h>void main(){int a=97;printf("%c\n",a);printf("%d\n",a);printf("%o\n",a);printf("%x\n",a);}程序分析:通过printf函数中不同的格式符号,即%c(字符),%d(十进制),%o(八进制),%x (十六进制)输出相应的值。

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析《程序设计基础》习题参考答案与部分解析第1章 C 语言概述一、填空a) C源程序的基本单位是函数。

b) 一个C程序中至少应包括一个 main函数。

c) 在C语言中,输出操作是有库函数 printf( )函数完成。

二、单选题1、A2、C3、B解析:第1题答案:A 。

因为一个C程序总是从main函数开始执行的,而不论main函数在程序中的位置。

且到main函数结束。

第2题答案:C 。

因为 main函数没有限制必须位于程序的最前面。

C程序书写自由,一行内可写几个语句。

在对一个C 程序进行编译的过程中,无法检查注释当中的拼写错误。

不过C语言本身并没有输入输出语句,输入输出是由函数完成的。

第3题答案:B。

因为一个C语言程序是由若干个函数组成的。

但至少包含一个main 函数,且main函数的位置不限。

三、编程题1、编写一个输出“Welcome to C!”信息的小程序。

解:程序如下#include “stdio.h”main( ){1printf(“Welcome to C!”) ;}2、已知三角形的三边长分别为3,4,5,试用海轮公式编程求其面积。

海伦公式为:S?= ,其中s= (a+b+s)/2 ;解:程序如下#include “math.h”#include “stdio.h”main( ){int a , b , c ; /* a ,b,c 3个整型变量表示三角形的3条边。

*/float s ,s1 ; /* s1作为面积变量,s 作为中间变量是都应该是实形*/a=3 ; b= 4; c=5 ;s= (a+b+c)/2.0 ;s1= sqrt(s*(s-a)*(s-b)*(s-c)); /* sqrt函数完成开平方根功能。

*/printf(“area=%f\n”,s1);}2第2章程序设计基础知识一、单选题1、C2、A3、C4、A5、C6、C7、D8、C9、D 10、A 11、D 12、A 13、C 14、C 15、B A 16、B 17 D解析:1. 答案:C。

《C语言程序设计教程》第三版课后习题参考答案

《C语言程序设计教程》第三版课后习题参考答案

《C语言程序设计教程》第三版课后习题参考答案C语言程序设计教程第三版课后习题参考答案第一章:C语言概述1.1 C语言的特点答案:C语言是一种通用的、面向过程的程序设计语言,具有高效、简洁、灵活等特点。

它提供了丰富的程序设计元素和功能,适用于各种不同的应用领域。

1.2 C语言程序的基本结构答案:C语言程序由预处理指令、函数声明、函数定义、变量声明和语句组成。

其中,预处理指令用来引入头文件或定义宏,函数声明用来声明函数的名称和参数,函数定义用来实现函数的功能,变量声明用来声明变量的类型和名称,语句用来表达具体的计算过程。

1.3 C语言的数据类型答案:C语言提供了多种数据类型,包括基本类型(整型、浮点型、字符型等)和派生类型(数组、指针、结构体等)。

每种数据类型在内存中占据一定的存储空间,并具有特定的取值范围和操作规则。

1.4 C语言的运算符和表达式答案:C语言支持各种运算符和表达式,例如算术运算符(+、-、*、/等)、关系运算符(>、<、==等)、逻辑运算符(&&、||、!等)等。

通过运算符和表达式可以进行各种数值计算和逻辑判断。

第二章:基本数据类型与运算2.1 整型数据类型答案:C语言提供了不同长度的整型数据类型,包括有符号整型(int、long等)和无符号整型(unsigned int、unsigned long等)。

整型数据类型可以表示整数值,并具有不同的取值范围。

2.2 浮点型数据类型答案:C语言提供了浮点型数据类型(float、double等),用来表示带小数部分的实数值。

浮点型数据可以表示较大或较小的数值,并具有一定的精度。

2.3 字符型数据类型答案:C语言提供了字符型数据类型(char),用来表示单个字符。

字符型数据可以用于表示各种字符(包括字母、数字、符号等)。

2.4 布尔型数据类型答案:C语言不直接支持布尔型数据类型,但可以使用整型数据类型来表示布尔值(0表示假、非零表示真)。

C语言程序设计习题参考答案

C语言程序设计习题参考答案

C语言程序设计习题参考答案习题 1一、判断题1.在计算机中,小数点和正负号都有专用部件来保存和表示。

2.二进制是由0和1两个数字组成的进制方式。

3.二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系。

4.在整数的二进制表示方法中,0的原码、反码都有两种形式。

5.有符号数有三种表示法:原码、反码和补码。

6.常用字符的ASCII码值从小到大的排列规律是:空格、阿拉伯数字、大写英文字母、小写英文字母。

解:1.F 2.T 3.T 4.T 5.T 6.T二、单选题1.在计算机中,最适合进行数值加减运算的数值编码是。

A. 原码B. 反码C. 补码D. 移码2.已知英文小写字母m的ASCII码为十进制数109,则英文小写字母y的ASCII码为十进制数。

A. 112B. 120C. 121D. 1223.关于ASCII码,在计算机中的表示方法准确地描述是。

A. 使用8位二进制数,最右边一位为1B. 使用8位二进制数,最左边一位为1C. 使用8位二进制数,最右边一位为0D. 使用8位二进制数,最左边一位为04.设在机器字长4位,X=0111B,Y=1011B,则下列逻辑运算中,正确的是___________。

A. X∧Y=1000B. X∨Y=1111C. X⊕Y=0011D. ¯Y=10005.下列叙述中正确的是()。

A.高级语言就是机器语言B.汇编语言程序、高级语言程序都是计算机程序,但只有机器语言程序才是计算机可以直接识别并执行的程序C.C语言因为具有汇编语言的一些特性,所以是汇编语言的一种D.C源程序经过编译、连接,若正确,执行后就能得到正确的运行结果6.用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将()。

A.生成可执行文件B.生成目标文件C.输出运行结果D.自动保存源文件7.下列叙述中不正确的是()。

A.main函数在C程序中必须有且只有一个B. C程序的执行从main函数开始,所以main函数必须放在程序最前面C. 函数可以带参数,也可以不带参数。

《C语言程序设计教程》(第三版)课后习题参考答案(精选5篇)[修改版]

《C语言程序设计教程》(第三版)课后习题参考答案(精选5篇)[修改版]

第一篇:《C语言程序设计教程》(第三版)课后习题参考答案C语言程序设计课后习题参考答案习题一一、单项选择题1、C2、B3、B4、C5、D6、A7、C8、A二、填空题1、判断条件2、面向过程编程3、结构化4、程序5、面向对象方法6、基本功能操作、控制结构7、有穷性8、直到型循环结构9、算法10、可读性11、模块化12、对问题的分解和模块的划分习题二一、单项选择题1、B2、D3、C4、B5、A二、填空题1、主2、C编译系统3、结构化4、程序5、面向对象方法6、.OBJ7、库函数8、直到型循环结构习题三一、单项选择题1、D2、B3、A4、C9、B10、C11、A12、D13、C17、B18、C19、C20、D21、A25、D26、A二、填空题1、补码2、10^-138~10^1 38、15~166、A7、B6、D7、B14、B15、C22、D8、C8、D16、A24、D、A3、实4、单目运算符、自右向左5、函数调用6、65,89习题四一、单项选择题1、D2、C3、D4、A5、D6、B7、A8、C9、B10、B二、填空题1、两, ;2、5.1690003、-200 2500、i=-200,j=2500回车、i=-200回车j=2500回车4、a=98,b=765.000000,c=4321.0000005、100 25.81 1.89234、100,25.81,1.89234、100回车25.81回车1.89234回车6、0,0,37、38、scanf(“%lf %lf %lf”,&a,&b,&c);9、13 13.000000 13.00000010、c=b-a;a=b+c;习题五一、单项选择题1、B2、D3、C4、B5、B6、D7、A8、B二、填空题1、1 、02、k!=03、if(x>4||xelse printf(“error!”); 4、if(((x>=1&&x=200&&x Printf(“%d”,x);5、16、17、10! Right!8、a=09、2,110、0习题六一、单项选择题9、D1、B2、C3、C4、B5、C6、B7、C8、A二、填空题1、无穷次2、83、205、3.66、*#*#*#$7、828、d=1.0 、k++、k9、!(x习题七一、单项选择题1、B2、D3、C4、C5、A二、填空题1、1 2 4 8 16 32 64 128 256 5122、a[age]++、i=18;i3、break、i==84、a[i]>b[i]、i3、j5、b[j]=0、b[j]=a[j][k]习题八一、单项选择题1、B3、C4、A5、A9、D10、B11、A12、C13、A二、填空题1、return1、return n+sum(n-1)2、return1、n*facto(n-1)习题九一、单项选择题1、D2、C3、D4、A5、C9、B10、C11、A13、B17、C18、A19、B20、C二、填空题1、int 、return z2、*p++3、’\0’、++4、p、max*q6、A7、D6、A7、C14、C15、B6、C7、C14、A15、D8、A8、D8、C习题十一、单项选择题1、D2、D3、A4、5、B6、A7、C8、B9、D10、11、C12、D13、D14、C二、填空题1、34 122、ARRAY a[10],b[10],c[10];3、2 34、ab、cd5、(*b).day、b->day6、adghi mnohi no7、(struct node *)、!=’\n’、p=top;8、p1=p1->next9、(struct list *)、(struct list *)、return (n)习题十一一、单项选择题1、A2、A3、B4、A5、B9、A10、B11、B12、B13、C17、D二、填空题1、ASCII(文本)、二进制2、pf=fopen(“A:\zk04\data xfile.dat”,”w”);3、fputc()、fputs()、fscanf()、fread()4、(后两个空)文件结束符、非0值7、B14、C15、D8、A16、A第二篇:C语言程序设计教程课后习题参考答案《C语言程序设计教程》课后习题参考答案习题1 1. (1)编译、链接.exe (2)函数主函数(或main函数)(3)编辑编译链接2.(1)-(5):DDBBC (6)-(10):ABBBC 3.(1)答:C语言简洁、紧凑,使用方便、灵活;C语言是高级语言,同时具备了低级语言的特征;C 语言是结构化程序设计语言,具有结构化的程序控制语句;C语言有各种各样的数据类型;C语言可移植性好;生成目标代码质量高,程序执行效率高。

C语言答案(删减版)

C语言答案(删减版)

C语言答案()第一章C语言程序设计基础习题参考答案1-1 冯·诺依曼体系结构的基本原理:五大构成部分:输入、输出、CPU、控制器、存储器;程序存储、自动执行、逻辑判断功能;二进制的信息表示。

1-6 编辑、编译、链接、执行。

1-7 必须有一个主函数,它是程序执行的起点;一个C语言程序由函数构成;每一条可执行语句都必须由分号结束;函数的代码段必须由花括号对括住。

一个函数中的语句组由声明区和可执行语句区两部分构成。

1-8 三个一缩;每遇到一个结构时均缩格,每结束一个结构时回退;缩格格式必须对齐。

1-9 试给出以下问题的程序设计过程描述:1) 求两个数中之最大者。

#include<stdio.h>int main(void){float fA,fB;clrscr();printf("Please input two values(fA,fB)::"); /*输入要比较的两个数fA,fB*/scanf("%f,%f",&fA,&fB); /*格式化输入fA,fB*/if(fA>=fB) printf("the max is %f",fA);if(fA<fB) printf("the max is %f",fB);return 0;} /*main()函数结束*/2) 求三个数中之最大者。

#include<stdio.h>int main(void){float fA,fB,fC,fMax;printf("Please input three values(fA,fB,fC)::");/*fA,fB,fC是输入的3个数,fMax存放最大值*/scanf("%f,%f,%f",&fA,&fB,&fC);fMax=fA;/*假定fA最大*/if(fMax<fB) fMax=fB;if(fMax<fC) fMax=fC;printf("The max is %f\n",fMax);/*输出最大值*/return 0;} /*main()函数结束*/3) 求1+2+3+…+100,即。

C语言习题答案全解

C语言习题答案全解

4.7用下面的scanf函数输入数据使a=10,b=20,c1='A',c2='a',x=1.5,y=3.75,z=67.8,请问 在键盘上如何输入数据? scanf("%5d%5d%c%c%f%f%*f %f",&a,&b,&c1,&c2,&y,&z); 解: main() { int a,b; float x,y,z; char c1,c2; scanf("%5d%5d%c%c%f %f %*f ,%f",&a,&b,&c1,&c2,&x,&y,&z); } 运行时输入: _ _ _ 10 _ _ _ 20Aa1.5-3.75 _ 1.5,67.8 注解:按%5d格式的要求输入a与b时,要先键入三个空格,而后再 打入10与20。%*f是用来禁止赋值的。在输入时,对应于%*f的地方, 随意打入了一个数1.5,该值不会赋给任何变量。
P55 算术运算 3.9求下面算术表达式的值. 符 (1)x+a%3*(int)(x+y)%2/4=2.5(x=2.5,a=7,y=4.7)
(2)(float)(a+b)/2+(int)x%(int)y=3.5(设a=2,b=3,x=3.5,y=2.5)
/ (除法运算符。如:5/3) 除号两边为整型则结果为整型 % (模运算符,或称求余运算符,%两侧均应为整型数据, 如:7%4的值为3)。 正负号取决于被除数符号 -7%4的值为-3, -7%(-4)的值仍为-3
4.8设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆球体积, 圆柱体积,用scanf输入数据,输出计算结果,输出时要求有文字说明,取 小数点后两位数字.请编程. 解:main() { float pi,h,r,l,s,sq,vq,vz; pi=3.1415926; printf("请输入圆半径r圆柱高h:\n"); scanf("%f,%f",&r,&h); l=2*pi*r; s=r*r*pi; sq=4*pi*r*r; vq=4.0/3.0*pi*r*r*r; vz=pi*r*r*h; printf("圆周长为: =%6.2f\n",l); printf("圆面积为: =%6.2f\n",s); printf("圆球表面积为: =%6.2f\n",sq); printf("圆球体积为: =%6.include<stdio.h> void main() { int c1,c2;(原为 char c1,c2) c1=97; c2=98; printf("%c%c\n",c1,c2); printf("%d%d\n",c1,c2); } 解:可以.因为在可输出的字符范围内,用整型和字符型作用相同.

C语言经典编程100题(答案版)

C语言经典编程100题(答案版)

C语言经典程序100题(答案版)【程序1】题目:企业发放的奖金根据利润提成。

利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?1.程序分析:请利用数轴来分界,定位。

注意定义时需把奖金定义成长整型。

2.程序源代码:1.#include"stdio.h"2.#include"conio.h"3.main()4.{5.long int i;6.int bonus1,bonus2,bonus4,bonus6,bonus10,bonus;7.scanf("%ld",&i);8.bonus1100000*0.1;9.bonus2bonus1+100000*0.75;10.bonus4bonus2+200000*0.5;11.bonus6bonus4+200000*0.3;12.bonus10bonus6+400000*0.15;13.if(i<100000)14.bonus i*0.1;15.else if(i<200000)16.bonus bonus1+(i-100000)*0.075;17.else if(i<400000)18.bonus bonus2+(i-200000)*0.05;19.else if(i<600000)20.bonus bonus4+(i-400000)*0.03;21.else if(i<1000000)22.bonus bonus6+(i-600000)*0.015;23.else24.bonus bonus10+(i-1000000)*0.01;25.printf("bonus%d",bonus);26.getch();27.}【程序2】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。

(完整版)C语言程序设计习题集及答案

(完整版)C语言程序设计习题集及答案

C语言程序设计习题集东华理工大学2014.9基础知识一单项选择题(每题2分,共44分)1 以下叙述正确的是___。

A C程序基本组成单位是语句B C程序每一行只能写一个语句C 简单C语句必须以分号作为结束符D 注释语句可以嵌套2 一个C语言程序是从___开始执行的。

A 程序中第一个函数B 名为main的函数C 包含文件(头文件)的第一个函数D 程序中的第一个语句3 请选出合法的C语言赋值语句___。

A a=b=58B i++;C a=58,b=58D k=int(a+b);4 下面标识符中,合法的用户标识符是___。

A 1abcB includeC a-b-c123D char5 以下所列的C语言整形常量中,正确的是___。

A 0x10B 0976C 076LD 01ff6 C语言中下列运算符的操作数必须为整型的是___。

A %B ++C /D =7 设a和b均为int型变量,则执行以下语句后的输出为___。

int a=20; int b=3; printf("%d\n",a+=(b%=2));A 20B 21C 0D 238 已知int i;,则执行语句 i=2.6;后,i的值为___。

A 2B 3C 2.6D 不确定9 以下合法的字符常量为___。

A 'ab'B '\482'C '\'D '\xaf'10 若y为int型变量,则执行以下语句后,y的值是___。

y=8; y+=y-=y*y;A 64B –56C –112D –4811 以下合法的浮点型常量是___。

A e-3B 1.5e+2.4C 3.14e+2LD 3.14 e +512 设int数据占用两个字节,float数据占用四个字节,double数据占用8个字节,且已知float a=2;int b=3;则执行下列语句输出为___。

printf("%d",sizeof(a*b)+2/5);A 4B 8C 6D 713 设int型占2个字节,且int i=-2;,则语句printf("%u",i);的输出结果为___。

c语言程序设计及答案

c语言程序设计及答案

一、选择题(1~40题每题1分,41~50题每题2分,共60分)以下各题A、B、C、D四个选项中,只有一个选项是正确的。

请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

1.微型运算机的运算器、操纵器及内存储器组合在一路,称之为()(此题分值:1分)【正确答案】DD.主机2.以下存储器中,存取速度最快的是()(此题分值:1分)【正确答案】DA.软盘B.硬盘C.光盘D.内存3.系统软件中最重要的是()(此题分值:1分)【正确答案】AA.操作系统B.语言处置程序C.工具软件D.数据库治理系统4、CPU处置的数据大体单位为字,一个字的字长()(此题分值:1分)【正确答案】DA.为8个二进制位B.为16个二进制位C.为32个二进制位D.与CPU芯片的型号有关5.打印当前屏幕内容应利用的操纵键是()(此题分值:1分)【正确答案】D(Print Screen)6.能将高级语言源程序转换成目标程序的是()(此题分值:1分)【正确答案】CA.调试程序B.说明程序C.编译程序D.编辑程序7.二进制数转换成十进制数是()(此题分值:1分)【正确答案】B8.十六进制数转换成十进制数是()(此题分值:1分)【正确答案】A9.中国国家运算机网络设施是()(此题分值:1分)【正确答案】A10.操纵键^C的功能为()(此题分值:1分)【正确答案】AA.终止当前操作B.系统复位C.暂停标准输出设备的输出D.终止命令行为命令处置程序,DOS系统启动后,它()(此题分值:1分)【正确答案】BA.驻留在外存,需要时装入内存B.常驻内存,包括所有内部命令C.不能处置外部命令D.不能处置后缀为.EXE的可执行文件12.为了将所有扩展名为.PAS的文件改成扩展名为.P,应利用命令()(此题分值:1分)【正确答案】C*.PAS .?ASPAS P*.PAS *.P*.PAS *.P??13.设当前盘中文件的途径为\A\B\XU,当前目录为\A\B。

C语言程序设计考试题答案

C语言程序设计考试题答案

1、已知 int i, x[3][4];则不能将 x[1][1]的值赋给变量 i 的语句是______ (分数:2 分)2、 A. i=*(*(x+1))3、 B. i=x[1][1]4、 C. i=*(*(x+1))5、 D. i =*(x[1]+1)标准答案是: A。

6、当 c 的值不为 0 时,在下列选项中能够将 c 的值赋给变量 a、b 的是______. (分数: 2 分)7、 A. a=c=b;标准答案是: B。

8、 B. (a=c)&&(b=c);9、 C. c=b=a;10、 D. (a=c)||(b=c);标准答案是: B。

11、函数的功能是交换变量 x 和 y 中的值,且通过正确调用返回交换的结果。

能正确执行此功能的函数是______。

(分数:2 分)12、 A. fund(int *x, int *y){ *x=*x+*y; *y=*x-*y; *x=*x-*y;}13、 B. funb(int x, int y){ int t;t=x; x=y; y=t;}14、 C. funa(int *x, int *y){ int *p;*p=x; *x=*y; *y=*p;}15、 D. func(int *x, int *y){ *x=*y; *y=*x;}标准答案是: A。

16、若 x=2,y=3 则 x||y 的结果是______ (分数: 2 分)17、 A. 018、 B. 319、 C. 120、 D. 2标准答案是: C。

21、已知 int a[10];则对 a 数组元素的正确引用是______ (分数:2 分)22、 A. a[10]23、 B. a[3.5]24、 C. a[10]25、 D. a(5)标准答案是: C。

1、若定义:int a 【2】【3】{0,2,4,6,8,10} ;以下描述正确的有______ (分数:3 分)A. * ( a+1 )为元素 6 的地址B. * ( a【1】 +1 ) 的值为 2C. ** ( a+1 ) +2 的值为 8D. a 【0】与 a 的相同标准答案是: ABCD。

c语言程序设计题目及答案

c语言程序设计题目及答案

一、程序设计共113题第1题题号:319#include ""void wwjt();int fun(int m){int i,k=1;if(m<=1) k=0;for(i=2;i<m;i++)if(m%i==0) k=0;return k;}第2题题号:351-----------功能:请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp 所指一维数组中。

二维数组中的数已在主函数中赋予。

#include<>#include<>#define M 3#define N 4void wwjt();void fun(int tt[M][N],intpp[N]){int i,j;for(j=0;j<N;j++){pp[j]=tt[0][j];for(i=1;i<M;i++)if(tt[i][j]>pp[j])pp[j]=tt[i][j];}第3题题号:375功能:从键盘上输入任意实数,求出其所对应的函数值。

z=e的x次幂(x>10)z=log(x+3) (x>-3)z=sin(x)/((cos(x)+4)#include <>#include<>void wwjt();double y(float x){double z;if(x>10) z=exp(x);else if(x>-3) z=log(x+3);else z=sin(x)/(cos(x)+4);return(z);}第4题题号:334功能:求给定正整数n以内的素数之积。

(n<28)#include <>#include""void wwjt();long fun(int n){long i,k;long s=1;for(i=2;i<=n;i++){for(k=2;k<i;k++)if(i%k==0)break; if(k==i)s=s*i;}return s;}第5题题号:333功能:计算并输出给定整数的所有因子之积(包括自身)。

c语言程序设计考试题答案及解析

c语言程序设计考试题答案及解析

c语言程序设计考试题答案及解析一、选择题1. 在C语言中,以下哪个关键字用于声明变量?A. TypeB. VarC. DeclareD. None of the above答案:D解析:在C语言中,变量的声明是通过指定变量的类型和名称来实现的,而不是使用特定的关键字。

选项A、B和C都不是C语言中用于声明变量的关键字。

2. 下列哪个是C语言中的合法标识符?A. 2variableB. variable2C. variable!D. variable$答案:B解析:C语言中的标识符可以包含字母、数字和下划线,但不能以数字开头,也不能包含特殊字符如感叹号或美元符号。

因此,选项B 是合法的标识符。

二、填空题1. 在C语言中,____ 用于定义一个整型变量。

答案:int2. 以下代码片段的输出是什么?```cint main() {int a = 10;printf("%d", a);return 0;}```答案:10三、简答题1. 简述C语言中数组的定义和初始化方法。

答案:在C语言中,数组可以通过指定类型和大小来定义,例如`int arr[10];` 定义了一个包含10个整数的数组。

数组可以通过循环或直接赋值来初始化,例如:```cint arr[5] = {1, 2, 3, 4, 5};```或者使用循环:```cint arr[5];for(int i = 0; i < 5; i++) {arr[i] = i + 1;}```四、编程题1. 编写一个C语言程序,实现计算并输出1到10的和。

```c#include <stdio.h>int main() {int sum = 0;for(int i = 1; i <= 10; i++) {sum += i;}printf("The sum of numbers from 1 to 10 is: %d\n", sum);return 0;}```解析:该程序使用一个for循环来累加1到10的整数,并将结果存储在变量`sum`中。

C语言编程答案

C语言编程答案

1温度转换(06秋)背景:经常出国旅行的驴友都知道,需要时时了解当地的气温状况,但不少国家采用了不同的温度计量单位:有些使用华氏温度标准(F),有些使用摄氏温度(C)。

现在,请你根据温度转换公式设计一个温度转换程序,可以进行温度转换。

如果输入摄氏温度,显示转换的华氏温度;如果输入华氏温度,显示转换的摄氏温度。

温度转换的公式为:F=(C×9/5)+32 ;C=(F-32)×5/9 ;式中F--华氏温度,C--摄氏温度。

输入:第一个数据(1 或 2 )确定转换的类型:华氏转摄氏(1);摄氏转华氏(2);第二个数据是相应需要转换的温度值。

输出:相应的转换后的温度值(保留小数点后 2 位)。

程序实例1:#include<>void main(){ int a;float x,y;scanf("%d%f",&a,&x);if ( a==1 ){ y=(x-32)*;printf("The Centigrade is %.2f\n",y);}else if(a==2){ y=(x*+32;printf("The Fahrenheit is %.2f\n",y);}}结果:输入:1 100输出:The Centigrade is输入:2输出:The Fahrenheit is程序实例2:#include <>void main(){float C;int a;scanf("%d %f",&a,&C);switch (a){case 1: printf("The Centigrade is %.2f\n",(C-32)*5/9);break;case 2: printf("The Fahrenheit is %.2f\n",(C*9/5)+32);break;default: printf("error\n");}}结果:输入:1 0输出:The Centigrade is输入:2 88输出:The Fahrenheit is9 分数的四则运算在小学时我们就学习了分数的四则运算,即对两个分数进行加、减、乘、除等运算,现在我们尝试下用C语言来实现。

c语言程序设计徐凤生答案

c语言程序设计徐凤生答案

c语言程序设计徐凤生答案一、单项选择题1.(A)是构成C语言程序的基本单位。

A、函数B、过程C、子程序D、子例程2.C语言程序从C开始执行。

A)程序中第一条可执行语句B)程序中第一个函数C)程序中的main函数D)包含文件中的第一个函数3、以下说法中正确的是(C)。

A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分4.下列关于C语言的说法错误的是(B)。

A)C程序的工作过程是编辑、编译、连接、运行B)C语言不区分大小写。

C)C程序的三种基本结构是顺序、选择、循环D)C程序从main函数开始执行5.下列正确的标识符是(C)。

A.-a1B.a[i]C.a2_ihttp://D.intt5~8题为相同类型题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A中的“-”,选项B中“[”与“]”不满足(1);选项D 中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B)。

A、3axB、xC、caseD、-e2E、union选项A中的标识符以数字开头不满足(2);C、E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是(C)。

A、%xB、a+bC、a123D、123选项A中的“%”,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。

A、print_3ddb8aBcB、I\amone_halfstart$it3paiC、str_1CpppowwhileD、PxqMy->bookline#His.age选项B中的“\”,”$”,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)9.C语言中的简单数据类型包括(D)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1;/*原程序:从键盘上输入两个数,使用条件表达式求出两个数的最大值扩展程序:从键盘上输入三个数,求三个数的最大值*/#include<stdio.h>void main(void){int a,b,c,d,max;printf("请输入三个数a,b,c(以逗号分隔): ");scanf("%d,%d,%d",&a,&b,&c);d=(a>b?a:b);max=(c>d?c:d);//max=((d=(a>b?a:b))>c?d=(a>b?a:b):c);printf("max=%d\n",max);printf("\n");}分支2;#include<stdio.h>void main(){int x,y;printf("请输入x的值:\n");scanf("%d",&x);if(x>-5 && x<=0) y=x;if(x>0 && x<=5) y=x-1;if(x>5 && x<=10) y=x+1;printf("x=%d,y=%d\n",x,y);}循环结构3;求出1~100之间能i%3==0&&i%5!=0的数和#include<stdio.h>main(){int i,sum=0;for(i=1;i<=100;i++)if(i%3==0&&i%5!=0) sum=sum+i;printf("和为:%d\n",sum);}4;猴子吃桃:题目:猴子第一天摘了若干个桃子,当即吃了一半,还不解馋,又多吃了一个;第二天,吃剩下的桃子的一半,还不过瘾,又多吃了一个;以后每天都吃前一天剩下的一半多一个,到第10天想再吃时,只剩下一个桃子了。

问第一天共摘了多少个桃子?———-一、思路分析:采用逆向思维,从后往前推断,发现其中有相同的地方,即出现递推公式,可以采用递归方法。

令S10=1,容易看出S9=2(S10+1),简化一下S9=2S10+2S8=2S9+2…..Sn=2Sn+1+2#include<stdio.h>main(){int day,x1,x2;day=9;x2=1;while(day>0){x1=(x2+1)*2;/*第一天的桃子数是第2天桃子数加1后的2倍*/x2=x1;day--;}printf("桃子总数为:%d\n",x1);}5;输入一行字符,统计其中英文字符、数字字符、空格和其他字符的个数#include<stdio.h>#include<ctype.h>#define N 100int main()//输入一行字符,统计其中英文字符、数字字符、空格和其他字符的个数{char zx[N];int i;int yw=0,sz=0,kg=0,qt=0;printf("请输入一行字符:");gets(zx);for(i=0;zx[i]!='\0';i++){//if(zx[i]>='a'&&zx[i]<='z' || zx[i]>='A'&&zx[i]<='Z')if(isalpha(zx[i])) yw++;//else if(zx[i]>='0'&&zx[i]<='9')elseif(isdigit(zx[i])) sz++;//else if(zx[i]==' ')elseif(isspace(zx[i]))kg++;else qt++;}printf("英文字符有%d个\n",yw); printf("数字字符有%d个\n",sz); printf("空格有%d个\n",kg);printf("其他字符有%d个\n",qt);return0;}6;找出二维数组中的最大值并写出它的下标#include <stdio.h>void main(){int i,j,max,r,c;int a[3][4];//={12,11,10,9,8,7,65,5,4,3,2,1};for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];r=i;c=j;}printf("最大元素位于第%d行,第%d列,是%d\n",r+1,c+1,max);}7;“水仙花数”是指一个三位数,其各位数字立方和等于该数#include<stdio.h>void main(){int i,j,k,n;for(i=1;i<10;i++)for(j=0;j<10;j++)for(k=0;k<10;k++){n=i*100+j*10+k;if((i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))printf("水仙花数为:%d\n",n);}}综合(函数)常见排序方法(c语言)---冒泡法,选择法选择法1.#include<stdio.h>2.void main()3.{4.int i,j,min,a[10];5.6. printf("Please input 10 integers:\n");7.for(i=0;i<10;i++)8. scanf("%d,&a[i];9.10.for(i=0;i<10;i++)11. printf("original:%d\n", a[i];12.13.for(i=0;i<10-1;i++)14. {15. min=i;16.for(j=i+1;j<10;j++)17. {18.if (a[min]>a[j] min=j;19. }20.if(i!=min)21. {22.int tmp=a[i];23. a[i]=a[min];24. [min]=tmp;25. }26. }27.for(i=0;i<10;i++)28. printf("bubbled:%d\n", a[i];29.}冒气法1.#include <stdio.h>2.3.int main()4.{5.int i,j,a[10];6.7. printf("Please input ten numbers: \n");8.for(i=0;i<10;i++)9. scanf("%d",&a[i]);10.11.for(i=0;i<10-1;i++)12. {//n个数要进行n-1趟比较13.for(j=0;j<9-i;j++) //每趟比较n-i次14.if(a[j]>a[j+1]) //依次比较两个相邻的数,将小数放在前面,大数放在后面15. {16.int temp=a[j];17. a[j]=a[j+1];18. a[j+1]=temp;19. }20. }21.22.for(i=0;i<10;i++) //输出比较之后的数组23. printf("%d ",a[i]);24.25. getchar();26.return 0;27.}二维数组中所有元素的和#include<stdio.h>#define N 5 //可以改变数组的行数,***但是输数的时候要注意*** #define M 4 //可以改变数组的列数void main(){int i,j,a[N][M];int sum=0;//用于求和printf("请输入数:");for(i=0;i<N,i++){for(j=0;j<M,j++){scanf("%d",&a[i][j]);}}for(i=0;i<N,i++){for(j=0;j<M,j++){sum = sum + a[i][j];}}printf("数组总和为%d\n",sum);return0;}求3×3矩阵对角线元素之和#include<stdio.h>int main(){int i,j,a[3][3],s1=0,s2=0;for(i=0;i<3;i++){for(j=0;j<3;j++){scanf(" %d",&a[i][j]);if(i==j)s1=s1+a[i][j];if(i+j==2)s2=s2+a[i][j];}}printf("%d %d\n",s1,s2);return 0;}求二维数组最大值最小值平均值#include<stdio.h>int main(){int i,j,a[3][3];int sum=0;float avg;printf("请输入一个二维数组:\n"); for(i=0;i<3;i++){for(j=0;j<3;j++)scanf("%d",&a[i][j]);}for(i=0;i<3;i++)for(j=0;j<3;j++)sum+=a[i][j];printf("%d",sum);avg=sum/6.0;printf("元素的平均值为%f",avg); }输出200以内的素数#include<stdio.h>#include<math.h>int prime(int n){int i;for(i=2;i<=sqrt(n+1);i++) if(n%i==0)return 0;return n>1;}int main(){int i;for(i=2;i<=200;i++)if(prime(i))printf("%4d",i); return 0;}输出从公元1000年至2000年所有闰年的年号,每输出3个年号换一行#include "stdio.h"void main(){int i,j=0;printf("从公元1000年至2000年所有闰年的年号:\n");for(i=1000;i<=2000;i++){if((i%400)==0||((i%4==0)&&(i%100!=0)))//能整除400的或者能整除4但不整除100的是闰年{printf("%5d",i);j++;if(j%3==0)//每输出3个换行一次printf("\n");}}用c语言实现输入两个二维数组,并将对应元素相加并输出,不要保存到第三个数组里,#include <stdio.h>#define M 3#define N 4int main(){int i,j,a[M][N],b[M][N];printf("输入第一个二维数组:\n");for(i=0;i<M;i++)for(j=0;j<N;j++)scanf("%d",&a[i][j]);printf("输入第二个二维数组:\n");for(i=0;i<M;i++)for(j=0;j<N;j++)scanf("%d",&b[i][j]);printf("\n输出:\n");for(i=0;i<M;i++){for(j=0;j<N;j++)printf("%-4d",a[i][j]+b[i][j]);printf("\n");}return0;}#include<stdio.h>void main(){int i,j;int a[4][6]={0};printf("请为二维数组输入值:\n");for(i=0; i<3; i++)for(j=0; j<5; j++)scanf("%d",&a[i][j]);for(i=0; i<3; i++){for(j=0; j<5; j++){a[i][5]=a[i][5]+a[i][j];a[3][j]=a[3][j]+a[i][j];a[3][5]=a[3][5]+a[i][j];}}printf("该数组为:\n");for(i=0; i<4; i++){for(j=0; j<6; j++)printf("%5d",a[i][j]);printf("\n");}}二维数组的归调函数#include<stdio.h>#define n 4#define m 4int s(int a[n][m], int x){int y=0,i,j;for(i=0;i<4;i++)for(j=0;j<4;j++)if(i==j)y+=a[i][j];return(y);}void main(void){int a[n][m]={{1,2,3,4},{5,6,7,8},{9,1,2,3},{1,2,3,4}};int sum=0,i,j;int s(int a[n][m] ,int x);printf("4x4的二维数组: \n");for(i=0;i<4;i++){for(j=0;j<4;j++)printf("%3d",a[i][j]);printf("\n");}sum=s(a,0);printf("主对角线的和为:%d\n",sum); }。

相关文档
最新文档