C语言作业一10.26

作业一(zm)


1.输出 “Hello World!” 语句

#include <stdio.h>
int main()
{
	printf("hello world!");
	return 0;
}

1
2.

#include <stdio.h>

void main()
{
	int a=1;
	float b=2.5;
	char c='A';
	printf("a=%d\n",a);
	printf("b=%f\n",b);
	printf("c=%c\n",c);
	printf("真帅\n");//输出字符串 
	
}

2

#include <stdio.h>

int main()
{
	printf("Date type        Number of bytes\n");
	printf("----------       ----------\n");
	printf("char=%d\n",sizeof(char));
	printf("int=%d\n",sizeof(int));
	printf("short=%d\n",sizeof(short));
	printf("long=%d\n",sizeof(long));
	printf("float=%d\n",sizeof(float));
	printf("double=%d\n",sizeof(double));
	printf("long double=%d\n",sizeof(long double)); 
	return 0;
}

3

错误:4

#include <stdio.h>

int main()
{
	double temC,temF;//tenC为摄氏度,temF为华氏度 
	printf("请输入华氏度:"); 
	scanf("%lf",&temF);
	temC=5*(temF-32)/9;
	printf("华氏温度%5.2f对应的摄氏温度为%5.2f\n",temF,temC);
	return 0;
}	

4

#include <stdio.h>

int main()
{
	int a=5,b=12,c=13;
	int triC;
	triC=a+b+c;
	printf("三角形的周长是:%d\n",triC);
	return 0;
	
	
}

5

6.溢出问题:
short short_value = 32767; // short占2个字节,最大值32767;
short_value += 1;
printf(“%d”, short_value);
上述结果输出值为:short_value = -32768, 请分析这个值是怎么得到的?
C语言的储存格式是按照其补码的形式存放的,short 类型的取值范围是 -215 ~ 215 -1,即"-32768 ~ 32767",又最大值的二进制为0111 1111 1111 1111,此时再加1,所有数往前进位,得到1000 0000 0000 0000,最高位数表示符号位,1 表示负数,按照求补码的方式,先减1 得到 0111 1111 1111 1111,然后取反得1000 0000 0000 0000。
所以有 short_value = -32768

7.求值:
(a)-30 * 3 + 21 / 6
(b) -30 + 3 * 21 / 6
© 30 / 3 * 21 % 6
(d) -30 / 3 * 21 % 4

(a)-87;(b)-20;©0;(d)-2

8.假设i,j, k 都是整数,说明表达式 i != j < k的含义。
首先因为“<”的优先级高于"!=" ,所以当 j<k 成立返回值 1 ,反之则返回 0 ,然后i不等于1,或者不等于0。

9.赋值完毕,i, d 的值分别为多少?
int i ; double d;
(a) d = i = 3.5;
(b) i = d = 3.5;
(a)3.5赋值给i,i=3,再把i的值赋值给d,d为3.0
(b)把3.5赋值给d,d为3.5,再把d的值赋值给i,i为3

10.请查询资料了解「条件运算符」的语法、例子等。
例子:

#include <stdio.h>

int main()
{
	int a=1,b=2,d;
	d=a>b?a:b;
	printf("d=%d",d);
	return 0;
	
	
}

10

11.假设有如下定义:
char cval;
int ival;
unsigned int ui;
float fval;
double dval;
请回答下列表达式是否又发生类型转换。请将有发生的情况指出来。
(a) cval = ‘a’ + 3;
(b) fval = ui – ival * 1.0;
(c) dval = ui * fval;
(d) cval = ival + fval + dval;
(a)结果为int型
(b)结果为float型
©结果为double型
(d)结果为double型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值