文档库 最新最全的文档下载
当前位置:文档库 › C语言作业答案

C语言作业答案

C语言作业答案
C语言作业答案

一、思考题

1、顺序结构的语句有哪些?

表达式语句,空语句,复合语句

2、从程序控制的角度看,复合语句是单一的语句吗?

3、C语言中的语句有哪几类?C语句与其他语言中的语句有哪些异同?

表达式语句,空语句,复合语句,控制语句。C语言与其他语言的语句类型基本相同,只是语法有所区别。

4、怎样区分表达式和表达式语句?C语言为什么要设表达式语句?什么时候用表达式,什么时候用表达式语句?

在C语言中,只要在任何表达式的结尾加上分号“;”就构成了表达式语句。表达式语句使C语言更加灵活。当我们使用表达式语句时一般只关心它的作用而不关心该表达式的值。如puts("hello");这个表达式语句,我们关心的是输出hello这个结果而不是puts函数的返回值。

5、C语言的输入输出功能是表达式语句吗,为什么?

是,因为输入输出功能是函数调用语句。

二、选择题

1、以下符合C语言语法的赋值表达式是B)d=9+e,f=d+9

2、下面程序运行时的输出结果是D)a=8

main(){

int a=5;

printf(“a=%d\n”,++a+2);

}

3、putchar函数可以向终端输出一个D)字符或字符变量值

4、运行以下程序时,从键盘输入25,13,10(回车),则输出结果是A)a1+a2+a3=48

main() {

int a1,a2,a3;

scanf(“%d,%d,%d”,&a1,&a2,&a3);

}

5、若有以下定义和语句

char c1=?b?,c2=?e?;

printf(“%d,%c\n”,c2-c1,c2-…a?+?A?);

则输出结果是B)3,E

6、下面程序的执行结果是A)10

main(){

int a,b;

a=20;b=10;

a+=a+b;

a-=a-b;

printf(“%d\n”,a);

}

7、使下列程序输出”123,456,78”,由键盘输出数据,正确的输入是C)123,45678

int i,j,k;

scanf(“%d,%3d%d”,&i,&j,&k);

printf(“%d,%d,%d\n”,i,j,k);

三、编程题

1、若a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1=’a’,c2=’b’,想得到以下的输出格式和结果,请写出程序(包括定义变量类型和设计输出)。要求输出结果如下:

a=3 b=4 c=5

x=1.200000,y=2.400000,z=-3.600000

x+y=3.60 y+z=-1.20 z+x=-2.40

u=51274 n=128765

c1=’a’or 97(ascii)

c2=’b’or 98(ascii)

#include

void main()

{

int a=3,b=4,c=5;

double x=1.2,y=2.4,z=-3.6;

long u=51274,n=128765;

char c1='a',c2='b';

printf("a=%d b=%d c=%d\n",a,b,c);

printf("x=%lf,y=%lf,z=%lf\n",x,y,z);

printf("x+y=%.2f y+z=%.2f z+x=%.2f\n",x+y,y+z,z+x);

printf("u=%ld n=%ld\n",u,n);

printf("c1=\'%c\'or%d\(ascii\)\n",c1,c1);

printf("c2=\'%c\'or%d\(ascii\)\n",c2,c2);

}

2、请写出下面程序的输出结果

main(){

int a=5,b=7;

float x=67.8564,y=-789.124;

char c=’a’;

long n=1234567;

unsigned u=65535;

printf(“%d%d\n”,a,b);

printf(“%3d%3d\n”,a,b);

printf(“%f,%f\n”,x,y);

printf(“%-10f,%10f\n”,x,y);

printf(“8.2f,%8.2f,%.4f,%.4f,%3f,%3f\n”,x,y,x,y,x,y);

printf(“%e,%10.2e\n”,x,y);

printf(“%c,%d,%o,%x\n”,c,c,c,c);

printf(“%ld,%lo,%x\n”,n,n,n);

printf(“%u,%o,%x,%d\n”,u,u,u,u);

printf(“%s,%5.3s\n”,”computer”,”computer”);

}

57

5 7

67.856400,-789.124023

67.856400 ,-789.124023

8.2f, 67.86,-789.1240,67.8564,-789.124023,67.856400

6.785640e+001,-

7.89e+002

a,97,141,61

1234567,4553207,12d687

65535,177777,ffff,65535

computer, com

3、用下面的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,&x,&y,&z);

0001000020aa1.5 -3.75 1,67.8

4. 设圆球半径为r=2.5,求圆球表面积、圆球体积。用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后两位数字。请编程序。

#include

#define PI 3.14

main()

{

float r,s,v;

printf("输入半径:");

scanf("%f",&r);

s=4*PI*r*r;

v=4.0/3*PI*r*r*r;

printf("圆球面积是:%.2f\n",s);

printf("圆球体积是:%.2f\n",v);

}

5.输入一个华氏温度,根据公式为c=5/9(f-32)计算并输出摄氏温度,输出时要求有文字说明,取2位小数。请编程序。

#include

main()

{

float f,c;

printf("输入华氏温度:");

scanf("%f",&f);

c=5.0/9*(f-32);

printf("摄氏温度是:%f",c);

}

6.输入三角形的三边长,求三角形面积。请编程序。

#include

#include

main()

{

float a,b,c,s,area;

printf("输入三角形的三条边长:");

scanf("%f%f%f",&a,&b,&c);

if(a+b>c&&a+c>b&&b+c>a)

{

//海伦公式

s=1.0/2*(a+b+c);

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf("面积是:%f",area);

}

else

printf("该三角形不存在!");

}

7.编写一个能引起short型变量溢出的程序。

#include

main()

{

short a;

a=21344211;

printf("a=21344211,溢出后a=%d\n",a);

}

8.编写一个程序,显示下列10个转义字符:\a,\b,\n,\r,\t,\v,\',\",\\,\? #include

main()

{

printf("\\a,\\b,\\n,\\r,\\t,\\v,\\\',\\\",\\\\,\\\?");

}

9.编写一个程序,输入一个小写字母,输出其对应的大写字母。#include

main()

{

char a,A;

printf("输入一个小写字母,将输出一个相应大写字母:");

a=getchar();

A=a+'A'-'a';

putchar(A);

putchar('\n');

}

带答案C语言2-10章作业

C语言习题集专业班级 学姓号名 C语言习题集 第2章运算符与表达式 一、选择题 1.若有定义:int a=2,b=3 ; float x=3.5,y= 2.5;则下面表达式的值为( C )。 (float)(a+b)/2+(int)x% (int)y A)3.5 B)35 C)3.500000 D)35.00000 2.若有定义:int x=3 ,y=2; float a=2.5 ,b= 3.5;则下面表达式的值 为( B )。(x+y)%2+(int)a/(int)b A)1.0 B)1 C)2.0 D)2 3.若x和n均是int型变量,且x的初值为12,n的初值为5,则执行下面表达式后x的值为( A )。x%=(n%=2) A)0 B)1 C)2 D)3 4.设有int x=11;则表达式(x++*1/3)的值是( A )。

A)3 B)4 C)11 D)12 5.下列程序的输出结果是( C )。 #include <stdio.h> main( ) { double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf("%d\n", d*y);} A)3 B)3.2 C)0 D)3.07 6.下列程序执行后的输出结果是(小数点后只写一位)( A )。 #include <stdio.h> main( ) { double d; float f; long l; int i; i=f=l=d=20/3; printf("%d %ld %f %f\n", i,l,f,d); } A)6 6 6.0 6.0 B)6 6 6.7 6.7 C)6 6 6.0 6.7 D)6 6 6.7 6.0 7.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是( C )。 A)1 B)2 C)2.0 D)2.5 8.若变量a,i已正确定义,且i已正确赋值,则合法的语句是( B )。

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) 所有被调用的函数一定要在调用之前进行定义

带答案C语言2-10章作业

C语言习题集 专业班级 学号 姓名

第2章运算符与表达式 一、选择题 1.若有定义:int a=2,b=3 ; float x=,y=; 则下面表达式的值为(C)。 (float)(a+b)/2+(int)x% (int)y A) B)35 C) D) 2.若有定义:int x=3 ,y=2; float a= ,b=; 则下面表达式的值为( B )。 (x+y)%2+(int)a/(int)b A) B)1 C) D)2 3.若x和n均是int 型变量,且x的初值为12,n的初值为5,则执行下面表达式后x的值为( A )。x%=(n%=2) A)0 B)1 C)2 D)3 4.设有 int x=11; 则表达式 (x++*1/3)的值是( A )。 A)3 B)4 C)11 D)12 5.下列程序的输出结果是( C )。 #include <> main( ) { double d=; int x,y; x=; y=(x+/; printf("%d\n", d*y);} A)3 B)3.2 C)0 D) 6.下列程序执行后的输出结果是(小数点后只写一位)( A )。 #include <> main( ) { double d; float f; long l; int i; i=f=l=d=20/3;

printf("%d %ld %f %f\n", i,l,f,d); } A)6 6 B)6 6 C)6 6 D)6 6 7.若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是( C )。 A)1 B)2 C) D) 8.若变量a,i已正确定义,且i已正确赋值,则合法的语句是( B )。 A)i=int(a) B)++i; C)a=a++=5; D)a=int(i); 9.若执行以下程序段后,c3的值为( A )。 int c1=1,c2=2,c3; c3=c2*c1; A)0 B)0.5 C)1 D)2 10.如下程序的运行结果是( D )。 #include <> main( ) { int y=3,x=3,z=1; printf("%d %d\n",(++x,y++),z+2); } A)3 4 B)4 2 C)4 3 D)3 3 11.能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是( D )。 A)a>=10 or a<=0 B)a>=0|a<=10 C)a>=10 && a<=0 D)a>=10||a<=0 12.设x,y,t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为( C )。 A)不定值B)4 C)3 D)1 13.以下程序的输出结果是( D )。 #include <> main( ) { int a=3;

15秋《C语言》在线作业2

15秋《C语言》在线作业2 试卷总分:100 测试时间:-- 试卷得分:100 单选题 一、单选题(共20 道试题,共100 分。)得分:100V 1. 以下叙述中不正确的是( ) A. 在不同的函数中可以使用相同的名字的变量 B. 函数中的形式参数是局部变量 C. 在一个函数内定义的变量只在本函数范围内有效 D. 在一个函数内的复合语句中定义的变量在本函数范围内有效 满分:5 分得分:5 2. 已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3';后,c2中的值为( ) A. D B. 68 C. 不确定的值 D. C 满分:5 分得分:5 3. 以下描述中正确的是( ) A. 由于do~while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句 B. do~while循环由do开始,用while结束,在while(表达式) 后面不能写分号 C. 在do~while循环体中,一定要有能使while后表达式值变为零("假")的操作 D. do~while循环中,根据情况可以省略while 满分:5 分得分:5 4. 下面程序的运行结果是( ) main() {char a[80]="AB",b[80]="LMNP"; int i=0;strcat(a,b); whi1e(a[i++]!='\0')b[i]=a[i];puts(b);} A. LB B. ABLMNP C. AB D. LBLMNP 满分:5 分得分:5 5. 以下不正确的说法是( ) A. register变量可以提高变量使用的执行效率 B. register变量由于使用的是CPU的寄存器,其数目是有限制的 C. extern变量定义的存储空间按变量类型分配 D. 全局变量使得函数之间的“耦合性”更加紧密,不利于模块化的要求 满分:5 分得分:5 6. 以下正确的描述是( ) A. 函数的定义可以嵌套,但函数的调用不可以嵌套 B. 函数的定义不可以嵌套,但函数的调用可以嵌套 C. 函数的定义和函数的调用均不可以嵌套 D. 函数的定义和函数的调用均可以嵌套 满分:5 分得分:5 7. 当把以下四个表达式用做if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是( )

C语言程序设计-作业与答案

《C 语言程序设计》课程作业 适用层次:专升本 培养类型:理工科专业 专业班级: 姓名: 学号: 作业要求:题目可打印,答案要求手写,考试时交作业。 第1次: 1.编写程序,分别计算1到100之间的奇数之和及偶数之和,并输出。 2.输入三角形的三条边a 、b 、c ,如果能构成一个三角形,则计算并输出三角形的周长和面积(结果保留两位小数);否则输出“无效的边长!”。 三角形面积计算公式为: s=))()((c x b x a x x ---,其中,x=(a+b+c)/2。 3.输入一个整数,求它的各位数字之和。例如,123的各位数字之和为6,-63的各位数字之和为9。 4.使用格里高利公式求π的近似值,精确到最后一项的绝对值小于10-6 。 +-+-=71 513114π …… 5.中国古代数学史上著名的“百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三,鸡雏三,值钱一。百钱买百鸡,问翁、母、雏各几何? 6.编写程序,键盘输入正整数n (0= 2 2. 编写一个函数prime(int n),判断一个整数是否是素数,若是素数,函数值返回1,否则返回0。利用该函数找出100-200之间的所有素数。素数是只能被1和自身整除的正整数,2是最小的素数。 3.写一函数int strlength(char *s)求一个字符串的长度。主函数中输入一个字符串,调用函数strlength 求其长度并输出。

最新C语言程序设计作业答案汇总

C语言程序设计作业 答案

C语言程序设计作业答案 作业一 C语言概述参考答案 一、选择题 1-5 ACDCB 二、编程题 main() { printf(“****************************************\n”); printf(“ Hello,world! \n”); printf(“****************************************\n”); } 作业二程序的灵魂——算法参考答案 一、填空题 1、确定性、有效性、有零个或多个输入、有一个或多个输出 2、顺序结构、选择结构、循环结构 3、函数 作业三数据类型、运算符与表达式参考答案 一、选择题 1-5 BDDAB 6-10 BCAAB 11-15 BCADC 16-20 DACCA 21-25 ADDBA 26-30 DDDDD 作业四顺序结构参考答案 一、选择题 1-5 BCDDD 6-10 BDADD 二、填空题

1、【31.415920,3.14159e+01】 2、【c=k】 3、【a=1,b=空格,c=2】 4、 【a=12,b=345】 5、【c=A】 作业五选择结构参考答案 一、选择题 1-5 ADCBC 6-10 BBBBA 11-15 DBAAC 16-17 CB 二、填空题 1.【-1】 2.【3】 3.【4】 4.【11】 5. 【97或'a'】 作业六循环结构参考答案 一、选择题 1-5 CBAAC 6-10 CBCCB 11-15 DBDDB 16-20 BCAAC 21-25 CDBBB 作业七数组参考答案 一、选择题 1-5 CDDAC 6-10 CCDBC 11-15 DDBCA 16-20 DCBDD 21-23 BDB 二、填空题 1、LBLMNP 2、SW* 3、mo 4、a=2,b=1 作业八函数参考答案 一、选择题 1-5 AAACA 二、填空题 1【编程中的main( )函数】2【函数说明部分】和【函数体】 3【–125= –5*5*5】 4【void add (float a, float b)】【float add (float a, float b)】

东莞理工学院C语言网上作业

《C语言程序设计》第2章作业 一、单选题(每小题5分,共100分,得分45 分) 1、1.关于C程序的构成描述,_________是不正确的。 A、一个源程序至少且仅包含一个main函数,也可包含一个main函数和若干个其他函数。 B、函数由函数首部和函数体两部分组成,二者缺一不可。 C、函数首部通常是函数的第1行,包括:函数属性、函数类型、函数名、函数参数等,不管有无函数参数,都必须用一对圆括号括起来。 D、函数体通常在函数首部下面,用一对花括号将声明部分和执行部分括起来,但不能为空。参考答案:D 2、2.C程序中,不管是数据声明还是语句,都必须有一个结束符,它是C语句的必要组成部分,该符号是_________。 A、逗号“,” B、句号“。” C、分号“;” D、单撇号“’”参考答案:C 3、3.下列关于C程序的运行流程描述,______是正确的。 A、编辑目标程序、编译目标程序、连接源程序、运行可执行程序。 B、编译源程序、编辑源程序、连接目标程序、运行可执行程序。 C、编辑源程序、编译源程序、连接目标程序、运行可执行程序。 D、编辑目标程序、编译源程序、连接目标程序、运行可执行程序。 参考答案:C 4、5.描述或表示算法有多种方法,______不是常用的表示方法。 A、自然语句 B、流程图或N-S图 C、伪代码 D、效果图参考答案:D 5、6.下面四个哪一个是C语言正确的标识符。 A、2xy B、data_file C、break D、a@https://www.wendangku.net/doc/c515673019.html, 参考答案:B 6、7.C语言是一种结构化的程序设计语言,任何程序都可以将模块通过3种基本的控制结构进行组合来实现,这三种基本的控制结构是指______。 A、分支结构、循环结构、函数结构 B、顺序结构、选择结构、函数结构 C、顺序结构、分支结构、循环结构 D、以上描述都不正确参考答案:C 7、下列关于算法特性的描述,______是不正确的。 A、有穷性:指一个算法应该包含有限的操作步骤,而不能是无限的。 B、确定性:指算法的每一个步骤都应当是确定的,不应该是含糊的、模棱两可的。 C、有效性:指算法中的每一个步骤都应当能有效地执行,并得到确定的结果。 D、输入/输出性:指算法中可以有输入/输出操作,也可以没有输入/输出操作。 参考答案:D 8、关于运行一个C程序的描述,______是正确的。 A、程序总是从main()函数处开始运行,当main()函数执行结束时,程序也就执行结束。 B、程序总是从main()函数处开始运行,当调用其它函数时,也可在其它函数中执行结束。 C、当程序中无main()函数时,可以设置一个主控函数来代替main()函数,从而达到运行程序的目的。 D、以上描述都不正确。参考答案:A 9、下列关于C程序中复合语句的描述,______是正确的。 A、用一对圆括号“( )”将若干语句顺序组合起来就形成一个复合语句。

C语言练习作业及答案

习题一 1、C语言源程序最多可能由____ABCD____________部分组成? A)预处理部分B)变量说明部分 C)函数原型声明部分D)函数定义部分 2、一个完整的C语言源程序最少必须有___C____。 A)若干个主函数B)若干个函数 C)且只能有一个主函数D)一个函数 3、C语言以函数为源程序的基本单位最主要有利于__B_____。 A)程序设计结构化B)程序设计模块化 C)程序设计简单化D提高程序设计有效性 4、要使得C语言编写的程序能够在计算机上运行并得出正确结果,必须要先经过______________B_______________________。 A)编辑和链接B)编译和链接 C)修改和运行D运行并输入数据 5、一个C程序的执行是从______A______。 A)本程序的main函数开始,到main函数结束。 B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C)本程序的main函数开始,到本程序文件的最后一个函数结束 D)本程序文件的第一个函数开始,到本程序main函数结束 6、以下叙述正确的是__A______。 A)在C程序中,main函数必须位于程序的最前面 B)C程序的每行中只能写一条语句 C)C语言本身没有输入输出语句 D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误 7、以下叙述不正确的是___D_____。 A)一个C源程序可由一个或多个函数组成 B)一个C源程序必须包含一个main函数 C)C程序的基本组成单位是函数 D)在C程序中,注释说明只能位于一条语句的后面 8、C语言规定:在一个源程序中,main函数的位置是___A_____。 A)必须在最开始 B)必须在系统调用的库函数的后面 C)可以任意 D)必须在最后

C语言作业

菱形 #include int main() { int i,j; for(i=1;i<=4;i++) { for(j=1;j<=4-i;j++) printf(" "); for(j=1;j<=2*i-1;j++) printf("*"); printf("\n"); } for(i=1;i<=3;i++) { for(j=1;j<=i;j++) printf(" "); for(j=1;j<=7-2*i;j++) printf("*"); printf("\n"); } return 0; } 三角形 #include int main() { int i,j; for(i=1;i<=5;i++) { for(j=1;j<=24-i;j++) printf(" "); for(j=1;j<=2*i-1;j++) printf("*"); printf("\n"); } return 0; }

乘法口诀 #include int main() { int i,j; for(i=1;i<=9;i++) { for(j=1;j<=9;j++) if(j<=i) printf("%d*%d=%d ",j,i,i*j); printf("\n"); } return 0; } 统计大写字母 #include #include int main() {char c; int num[26]={0},i; while((c=getchar())!='#') if(isupper(c)) num[c-'A']+=1; for(i=0;i<26;i++) if(num[i]) printf("%c:%d\n",i+'A',num[i]); return 0; } 最小公倍数,最大公约数 #include int main() { int m,n,p,r,t; scanf("%d,%d",&n,&m); if(n

C语言作业答案

第一章:第6题 方法一: #include int main() {int a,b,c,max; printf("please input a,b,c:\n"); scanf("%d,%d,%d",&a,&b,&c); max=a; if (max int main() {int max(int x,int y); int a,b,c,d; printf("please input a,b,c:\n"); scanf("%d,%d,%d",&a,&b,&c); d=max(max(a,b),c); printf("The largest number is %d\n",d); return 0; } int max(int x,int y) { return (x>y)?x:y; } 第三章第3题 #include #include int main() {float d=300000,p=6000,r=0.01,m; m=log10(p/(p-d*r))/log10(1+r); printf("m=%6.2f\n",m); return 0;

} 第4题 #include int main() {char c1,c2; c1=97; c2=98; printf("c1=%c,c2=%c\n",c1,c2); printf("c1=%d,c2=%d\n",c1,c2); return 0; } (1)运行时会输出什么信息?为什么? 解:运行时输出: 第1行是将c1,c2按%c的格式输出,97是字符a的ASCII代码,98是字符b的ASCII代码。第2行是将c1,c2按%d的格式输出,所以输出两个十进制整数。 (2)如果将程序第4,5行改为: C1=197; C2=198; 运行时会输出什么信息?为什么? 解:由于Visual C++6.0字符型数据是作为signed char 类型处理的,它存字符的有效范围为0~127,超过此范围的处理方法,不同的系统得到的结果不同,因而用“%c”格式输出时,结果是不可预料的。 (3)如果将程序第3行改为; int c1,c2; 运行时会输出什么信息?为什么? 解:如果给c1和c2赋的值是97和平利用8,则输出结果与(1)相同。如果给c1和c2赋的值是197和198,则用%c输出时,是不可预料的字符。用%d输出时,输出整数197和198,因为它们在int类型的有效范围内。 第5题 #include int main() {int a,b; float x,y; char c1,c2; scanf("a=%d b=%d",&a,&b); scanf("%f %e",&x,&y);

北理工C语言编程网上作业

H1:计算通用产品代码(UPC)的校验位(选作) 成绩: 5 / 折扣: 0.8 背景 许多年来,货物生产商都会把超市售卖的每件商品上放置一个条码。这种被称为通用产品代码(Universal Product Code,缩写UPC)的条码可以识别生产商和产品。超市可以通过扫描产品上的条码来确定支付此项商品的费用。每一个条码由十二位数字构成,通常这些数字会显示在条码下面。例如,包装为26盎司的Morton牌碘化盐所用条码下的数字是: 0 24600 01003 0 第一个数字表示商品的种类(0表示大部分的食品杂货,2表示需要称量的货品,3表示药品或和健康相关的商品,而5表示优惠券)。接下来的一组五位数字用来识别生产商。而第二组五位数字则用来区分产品类型(其中包括包装尺寸)。最后一位数字是“校验位”,它可以帮助鉴别先前数字中的错误。如果条码扫描出现错误,那么前十一位数字和最后一位数字可能会不一致,而超市扫描机也会拒绝整个条码。 下面是一种计算校验位的方法:首先把第一位、第三位、第五位、第七位、第九位和第十一位数字相加。然后把第二位、第四位、第六位、第八位和第十位数字相加。接着把第一次加法结果乘以3后再加上第二次加法的结果。随后,再把上述结果减去1。减法后的结果除以10取余数。最后,用9减去上一步骤中得到的余数。现在以Morton碘盐为例,第一组数字的加法是0+4+0+0+0+3=7,而第二组数字的加法是2+6+0+1+0=9。把第一组加法值乘以3后再加上第二组加法值得到的结果是30。再减去1,结果变为29。再把这个值除以10取余数为9。9在减去余数结果9,最终值为0。 输入 每次输入三行数据,第一行是UPC的第一位数字,第二行是UPC的第一组五位数字,第三行是UPC的第二组五位数字。 输出 UPC的校验位

“C语言”网上作业系统的实现

“C语言”网上作业系统的实现 摘要本文论述的是一个基于INTERNET 的B/S模式下C语言网上作业系统的实现方法、思路及过程。本系统用ASP动态网页的形式实现,系统前台界面美观,设置多级用户权限分类登录,可分为教师、学生、管理员三类用户;后台功能强大,操作简单,满足系统维护需要。本系统很好地完成了C语言的教与学,使得教师可以在线布置作业、批改作业、对学生成绩进行统计、在线答疑;学生亦可以实现在线浏览作业、提交作业、在线疑问等功能。另外,系统在线直接调用TC程序运行服务器端C语言作业,并调试运行得到结果,是本系统最大的特色;系统还可以完成学生成绩的数据统计,供教师参考,以适当修正授课进度,以方便学生调整学习的进度。 关键词ASP系统;作业批改;TC调用;数据统计 随着信息技术的高速发展,计算机的应用越来越普及和广泛,所以目前社会上各个学校提交作业的形式也由原来的手工誊写改革成了上交电子文档,但是目前学校作业管理一般都采用以下两种方法: 1)将作业存在U盘、光盘等介质上。 2)存放到教师电脑上的一个共享目录内。 用前一种方法作业收缴麻烦、不便管理;第二种方法要好一些,但学生可以随意查看、更改作业,老师在帮学生修改作业时,也很容易搞乱哪些是改过,哪些没改过;这些都使教师对学生作业的管理产生很大的麻烦。 这就必然要求有更好方法来实现对作业的管理,我的C语言网上作业系统就在这样的情况下应孕而生了。它的应用不仅是在C语言这一门课程中。在现代化教育技术模式下,计算机在学校已相当普及。在这样的环境下,许多学校对学生的部分作业提出了更高要求,例如要求学生作业能够长期保存到计算机中以利于学校将来教学的重复利用等等,就要求教师能够在任何联网的计算机上进行在线作业的布置、批改、成绩统计、成绩浏览等,要求学生能够查询自己上交的作业,其它相关人员也可以利用计算机通过互联网对学生作业情况进行了解与查询。这是未来教育发展的趋势,也确实是一个行之有效的办法,值得去推广。 本文的创新之处有以下两个方面: 1)实现普通作业管理之外,对某个学生的全部作业的平均分以及对某一次作业全部学生的平均分进行了适当的统计,以此来掌握学生的学习情况,教师就可根据数据进行分析适当调整授课速度和难度。 2)对学生上交C语言程序直接在线运行,查看程序结果,直接根据程序结果给学生评分,避免书面程序作业批改时的错误。

C语言作业答案

P15 三.2.3.4 、P55 5 P36 三.1.5.7 P74 三 P83 三.3.4 第三章作业: P44 2.3.4 2、有一个已排好序的数组,今有一个数,要求按原来排序的规律将它插入数组(从小到大排列)中。 #define N 10 main() {int i,j,n; int a[N]={1,3,5,7,9,11,13,15,17}; scanf("%d",&n); i=0; while(n>a[i]&&ii;j--) a[j]=a[j-1]; a[j]=n; for(i=0;i=0;i--) printf("%d ",a[i]); /* 按照逆序输出*/ printf("\n"); } 4、定义一个一维整形数组a【20】,由键盘随机输入20个2位数,统计其中60~99各值段元素的个数(10个数为一段)。 main() { int a[20],i,n1,n2,n3,n4; n1=n2=n3=n4=0; for(i=0;i<20;i++) {a[i]=rand()%100 ; printf("a[%d]=%d\n",i,a[i]);} for(i=0;i<20;i++)

if(a[i]>=60&&a[i]<69) n1++; else if(a[i]>=70&&a[i]<79)n2++; else if(a[i]>=80&&a[i]<89)n3++; else if(a[i]>=90&&a[i]<99)n4++; printf("\n 60~69=%d\n 70~79=%d\n 80~89=%d\n 90~99=%d",n1,n2,n3,n4); } 第七章作业: P103三.2.4.6.7.9、 2、统计100以内的所有素数。要求每行输出5个素数。 void main() { int i,j; for(i=2;i<=100;i++) { for (j=2;j<=sqrt(i);j++) if (i%j==0) break; if (j>sqrt(i)) printf("%5d", i); /* 是素数*/ } } 4、编程输出1~100之间所有完数。 #include "math.h" main() { int sum, i, j; for(i=2; i <= 100; i++) { sum=0; for(j=2;j<= sqrt(i);j++) if(i%j == 0) sum=sum+j+i/j; if(sum==i-1) printf("%d ",i); } } 6、编写程序实现:输入两个整数,输出其最大公约数和最小公倍数。void main() {int a,b,n1,n2,temp; printf("input two datas: "); scanf("%d%d",&a,&b); if(a1;n1--) if(a%n1==0&&b%n1==0) break; /*求最大公约数*/ n2= a*b/n1; /*求最小公倍数*/ printf("The GCD is: %d\n ",n1); printf("The LCM is: %d\n ",n2); }

C语言作业及答案

练习三 振动与波动(机械振动与机械波,光波的干涉、衍射、偏振) 一、选择题: 1.一质点作简谐振动,周期为T ,当它由平衡位置向X 轴正方向运动时,从二分之一最大位移处到最大位移处这段路程所需要的时间为: (A) 4/T (B) 12/T (C ) 6/T (D) 8/T 参考解答: 简谐振动运动学问题,对相位和时间的确定,最好的方法就是旋转矢量图。图中3π=?。相位周期2π与时间周期T 相对应,有 t T ? = 2π,6 3 π 2π2π T T T t = = = ? 2.两倔强系数分别为1k 和2k 的轻弹簧串联在一起,构成一个弹簧。用该弹簧和一质量为m 的物体构成一个水平谐振子,则该系统的振动周期为: (A)2 1212)(π 2k k k k m T += (B) 2 1π 2k k m T += (C )2 121) (π 2k k k k m T += (D) 2 12π 2k k m T += 参考解答: 简谐振动动力学问题,只有牛顿第二定律和转动定律。当联合弹簧被拉长x 时,由于两个分弹簧的劲度系数不同,它们各自的伸长也不相同,如图所示,但21x x x +=。设合弹簧的劲度系数为k ,有kx F -=。对两个轻弹簧和物体分别有 22111x k x k F -=-=,01=-F F ,kx t x m ma F -===22 d d ()121 211121111F k k k k F k F k x x k kx F F ? ??? ??+ =???? ??+=+-=-== 2 1 111k k k + = 0d d d d 2 2 2 22 =+= + x t x x m k t x ω 2 12121 π211π 2π 2π 2k k k k m k k m k m T +=? ??? ??+ === ω 3.一弹簧振子作简谐振动,总能量为1E ,如果简谐振动振幅增加为原来的两倍,重物的质量增为原来的四倍,则它的总能量E 变为: (A) 4/1E (B) 2/1E (C) 12E (D ) 14E

电子科技《C语言》在线作业1辅导答案

电子科技《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次

C语言作业

实验一 C程序的运行环境及简单程序编写(一) 一、实验目的 1. 了解VC++6.0集成环境的基本操作方法。 2. 了解在该系统上如何编辑、编译、连接和运行一个C程序。 3. 通过运行简单的C程序,初步了解C源程序的特点。 二、实验内容 1. 打印输出你的姓名,年龄,地址信息。 2. 编写程序,实现输出 ********************************************* C语言程序设计 ********************************************* 3. 编写程序,求2个整数的和、差、积、商。 实验二C程序的运行环境及简单程序编写(二) 一、实验目的 1. 编写运行简单的C程序,了解C源程序的特点。 二、实验内容 1. 编写程序,已知长方形的长为8cm,宽为3cm,求长方形的周长和面积。 2. 在上一题的源代码中,用2种注释方法,添加注释内容: 这是一个简单的C语言程序。 3. 编写程序,实现输出三行文字,第一行 Print: (1)\\\\\\\\\\ (2)&&&&&&&&&& (3)||||||||||

实验三数据的存储与运算(一) 一、实验目的 1. 掌握变量的定义及使用 2. 掌握整型数据在程序中的表示及使用 二、实验内容 1.教材P19例2.1 2. 编写一个程序,要求用户输入一个美金数量,然后显示出如何用最少的面值为20美 元、10美元、5美元和1美元钞票来付款。 运行结果: Ener a dollar amount:93 Result: $20 bills:4 $10 bills:1 $5 bills:0 $1 bills:3 3. 输入2个变量的值,交换这2个变量的值后输出。 Input (x,y):2,3 output(x,y):3,2 实验四数据的存储与运算(二) 一、实验目的 1. 掌握整型数据在程序中的表示及使用 2. 掌握实型数据在程序中的表示及使用。 二、实验内容 1.教材P24例2.2 2.教材P46习题1 3. 编写一个程序,要求用户输入一个两位数,然后逆序打印出这个数。 Enter a two-digit number:28 The reversal is :82 实验五数据的存储与运算(三) 一、实验目的 1. 掌握符号常量、字符型数据、字符串的应用 2. 掌握强制类型的转换 二、实验内容 1.给出园半径,求园的体积v=4/3πr3 2.将小写字母转换为大写字母,并将其按字符和整数两种方式输出。 3.输入从午夜开始的秒数total_sec,请计算出等价的时间,用小时(0 ~23)、分钟(0 ~59) 和秒(0 ~59)表示。(建议使用%运算符) Enter total seconds:2590 Time:0:43:10 4.编程计算1/2+1/3+1/5的结果。

北理C语言作业及答案2

34 北理工的恶龙 成绩: 10 / 折扣: 0.8 背景: 最近,北理工出现了一只恶龙,它长着很多头,而且还会吐火,它将会把北理工烧成废墟,于是,校长下令召集全校所有勇士杀死这只恶龙。要杀死这只龙,必须把它所有的头都砍掉,每个勇士只能砍一个龙头,龙的每个头大小都不一样,一个勇士只有在身高不小于龙头的直径的情况下才能砍下它。而且勇士们要求,砍下一个龙头必须得到和自己身高厘米数一样的学分。校长想花最少的学分数杀死恶龙,于是找到你寻求帮助。 输入: 第一行龙头数n , 勇士人数m (1<=n, m<=100 )接下来n 行,每行包含一个整数,表示龙头的直径接下来m 行,每行包含一个整数,表示勇士的身高l 输出: 如果勇士们能完成任务,输出校长需要花的最小费用;否则输出“ bit is doomed! ” 测试输入期待的输出 时间限制内存限制额外进程 测试用例 1 以文本方式显示 1. 2 3? 2.5? 3.4? 4.7? 5.8? 6.4? 以文本方式显示 1.11? 1秒64M 0 测试用例 2 以文本方式显示 1. 2 1? 2.5? 3.5? 4.10? 以文本方式显示 1.bit is doomed!? 1秒64M 0 #include void main() { int s=0,t,i,j,m,n,a[100],b[100],c[100]; for(i=0;i<=99;i++) a[i]=0,b[i]=0,c[i]=0; scanf("%d%d",&m,&n); for(i=0;i<=m-1;i++)

scanf("%d",&a[i]); for(i=0;i<=n-1;i++) scanf("%d",&b[i]); if(m>n) printf("bit is doomed!\n"); else { for(i=0;i<=m-1;i++) for(j=i;j<=m-1;j++) {if(a[i]>a[j]) {t=a[i],a[i]=a[j],a[j]=t;}} for(i=0;i<=n-1;i++) for(j=i;j<=n-1;j++) {if(b[i]>b[j]) {t=b[i],b[i]=b[j],b[j]=t;}} t=0; for(i=0;i<=m-1;i++) for(j=0;j<=n-1;j++) if(a[i]<=b[j]) {c[t]=b[j]; t++; b[j]=0; break;} if(t

C语言作业答案

//输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。 #include int main() {char c;int letters=0,space=0,digit=0,other=0;printf("请输入一行字符:\n"); while((c=getchar())!='\n') {if(c>='a'&&c<='z'||c>='A'&&c<='Z') letters++;else if(c==' ') space++;else if(c>='0'&&c<='9') digit++;else other++;} printf("字母数:%d\n空格数:%d\n数字数%d\n其他字符 数:%d\n",letters,space,digit,other); return 0;} //求Sn=a+aa+aaa+...+aa..a(n个a)之值,其中a是一个数字,n表示a的位数,例如:2+22+222+2222+22222(此时n=5),n由键盘输入。 #include int main() {int a,n,i=1,sn=0,tn=0;printf("a,n=:");scanf("%d,%d",&a,&n); while(i<=n) {tn=tn+a;sn=sn+tn;a=a*10;++i;} printf("a+aa+aaa+...=%d\n",sn); return 0;} //求∑n!(即求1!+2!+3!+4!+...+20!)。 #include int main() {double s=0,t=1;int n; for(n=1;n<=20;n++) {t=t*n;s=s+t;} printf("1!+2!+3!+4!+...+20!=%22.15e\n",s); return 0;} //一个球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下,再反弹。求它在第10次落地时,共经过多少米,第10次反弹多高。 #include int main() {double sn=100,hn=sn/2;int n; for(n=2;n<=10;n++) {sn=sn+2*hn;hn=hn/2;} printf("第10次落地时共经过%f米\n",sn); printf("第10次反弹%f米\n",hn); return 0;} //求一个3*3的整型矩形对角线元素之和。 #include int main() {int a[3][3],sum=0;int i,j; printf("enter data:\n");

相关文档
相关文档 最新文档