本文用来练习谭浩强章节练习题,慢慢更新。有需要解答的在下边留言第一时间回复。
第一章
1-6
编写一个程序,输入3个数a,b,c,输出最大值。
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int a, b, c;
int max = 0;
scanf("%d%d%d", &a, &b, &c);//输入3个值,传给计算机,注意&。
if (a > b)
max = a;
else
max = b;
if (c > max)
max = c;
printf("最大值为%d",max);
return 0;
}
第三章
3-4
运行代码结果是什么?为什么?
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
char c1 = 97;
char 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,98是字符a,b的ASCLL码,第2行按%d的格式输出所以是十进制数。
2.改成c1=197 c2=198后
char是有符号操作数范围-128–127 所以输出结果不可知。%d格式输出时,c1=-59,c2=-58
3.改成int c1,c2;
97 98输出一样 如果给他赋值197 198,超出ASCLL码范围,结果不可知。当用%d输出时,197 198在int类型有效范围内。
3-6编程序将China改变密码Glmre
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int 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",c1,c2,c3,c4,c5);
return 0;
}
3-7半径r=1.5,高度=3,求周长 面积等参数。
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
float r, h, l, s, sq, v1, v2;
float pi = 3.141526;
printf("请输入半径r,圆柱高度h");
scanf("%f%f",&r,&h);
l = 2 * pi * r;
s = pi * r * r;
sq = 4 * pi * r * r;
v1 = 4 / 3 * pi * r * r * r;
v2 = s * h;
printf("周长l=%6.2f\n",l);
printf("面积s=%6.2f\n", s);
printf("表面积sq=%6.2f\n", sq);
printf("体积v1=%6.2f\n", v1);
printf("圆柱体积v2=%6.2f\n", v2);
return 0;
}