c语言作业 舍罕王,C语言教材后习题及答案.docx

C

C语言教材习题及答案 PAGE # / 25p

第一章

什么是程序?什么是程序设计语言?

C语言有什么特点?

什么是算法?算法的描述有哪些基本方法?

第一章主要关注两个概念:一是程序的三种结构(顺序、分支或叫选择、循环) ; 二是函数,主函数main()

第二章

指出下列哪些是C语言合法的用户识别符。

void a3_b3 For 2a defi ne_123 _abc DO

指出下列哪些是C语言合法的常量。

"3'4 " " 0x1g33" a" E20 '\18' \0xa'1.E-53.F

'\0'.12'\a'

"3'4 ""双引号内表示字符串,但要在一个串内含有单引号、双引号要用转义字 符正确的是: ’4\""

0x是十六进制的表示形式之一,但十六进制里没有g这个数值

\0xa'带一个单引号、0开头,无意义.这里要注意\ddd,1-3 位八进制数, \xhh,1-2位十进制数,他们都表示对应的ASCII值

E20, E表示指数形式,但两边必须都有数字。

将此题全部弄懂,所有关于常量的分基本跑不掉了。

指出下列定义变量语句中的错误。

int a;b=5;//同类型的两个变量,中间不能用分号。

doubel h; //double

int x,float y;//中间要用分号

float f(x);//非法符号

定义变量要注意,数据类型的关键字,还有就是变量名称必须是合法标识符

写出能表示数学式子1/(2a + 1/2a)的C语言表达式

1.0/(2*a+1/(2*a))

⑴#include int main()

{

double x=1,y;

y=x+3/2;

prin tf("y=%f\n",y);

return 0;

}结果是:2.000000,注意 3/2=1

#i nclude

int main()

{

float x=2.9,y=3.2, z;

int a=8;

z=x+a%3*(i nt)(x+y)/2;

prin tf("z=%f\n",z);

return 0;

}

结果是:8.900000,注意(int)(x+y)=6。

#i nclude

int main()

{

int a=65,b=-20;

char ch='A';

float x=12.345678f;

prin tf("abc\n\101\t\x41\\101\n");

prin tf("a=%d,%c,%o,%x\n",a,a,a,a);

prin tf("b=%d,%o,%x,%u\n",b,b,b,b);

prin tf("ch=%d,%c\n",ch,ch);

prin tf("x=%f,%.2f,%10.2f,%-10.f\n",x,x,x,x); return 0;

abc

AA\161

a-65,A jei 31

b=-20,37777777754,ffffffec,4294967276 ch = 65, A

x=12.345678 J2.35,12.35 J 2

此题包含的内容较多,都是细节,希望对照教材仔细分析结果 6程序设计。

(1)输出如下的图形。

*****

此题答案参考实验指导书。这题在这章出现,主要是练习printf(),

(2)已知铁的比重是7.86,计算并输出直径为100毫米的铁球重量

#i nclude

#defi ne PI 3.1415926

void mai n()

{ double w,r=100.0/20,p=7.86;

w=p*4.0*PI*r*r*r/3.0;

prin tf("%.2f\n",w);

}

第三章

1.写出表示变量x的值在[0,100]范围内的逻辑表达式。x>=0 && x<=100

2?写出表示整型变量x的值能被5或7整除的逻辑表达式。x%5==0||x%7==0

3?已知变量a、b、c的值分别是3、2、1,逻辑表达式a>b>c的值是多少? 0

4?已知变量x,y的值分别为5,9,逻辑表达式x&&y-9)*6-!x的值是多少? 0

5.已知变量m,n的值都为1,逻辑表达式 m--&&n++执行后,m,n的值是多少? m=0,n=2, 逻辑表达式的值是真。

6(1): #i nclude

int main()

{

int x=2,y;

if(x) y=x;

else y=3*x-1;

prin tf("y=%d\n",y); return 0;

}

运行结果是:y=2

#i nclude

int main()

{

int a=2,b=2,c=3;

if (a==b)

if(b==c)prin tf("a==b==c\

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值