例 3.7 float型数据的有效位数. 编写程序:
#include
例3.8 先后输出BOY三个字符。编写程序:
#include
char a='B',b='O',c='Y'; putchar(a); putchar(b); putchar(c); putchar ('\\n'); return 0; }
#include
char a,b,c; a='B';b='O';c='Y'; putchar(a); putchar(b); putchar(c); putchar ('\\n'); return 0; }
// 定义3个字符变量,并初始化 // 向显示器输出字符B // 向显示器输出字符O // 向显示器输出字符Y
// 向显示器输出一个换行符 // 定义3个字符变量
// 给3个字符变量赋值 // 向显示器输出字符B // 向显示器输出字符O // 向显示器输出字符Y
// 向显示器输出一个换行符 例3.9 从键盘输入BOY三个字符,然后把它们输出到屏幕。 编写程序:
#include
int main ( )
{ char a,b,c; // 定义字符变量a,b,c
a=getchar(); // 从键盘输入一个字符,送给字符变量a b=getchar(); // 从键盘输入一个字符,送给字符变量b c=getchar(); // 从键盘输入一个字符,送给字符变量c putchar(a); // 将变量a的值输出 putchar(b); putchar(c); putchar('\\n'); return 0; }
#include
int main ( ) {
putchar(getchar()); putchar(getchar()); putchar(getchar()); putchar('\\n'); return 0; }
// 将变量a的值输出 // 将变量a的值输出 // 换行 // 将接收到的字符输出 // 将接收到的字符输出 // 将接收到的字符输出 例4.1 在例3.5的基础上对程序进行改进。题目要求是求 2 ?? ? c 方程的根。 axbx? 02由键盘输入a,b,c。假设a,b,c的值任意,并不保证 b ? 4 ac ? 0 。 需要在程序中进行判别,如果 b 2 ac ? 0 ,就计算并输出方程的两个实根,? 4否则就输出“方程无实根”的信息。
编写程序:
#include
#include
{double a,b,c,disc,x1,x2,p,q; // disc是判别式sqrt(b*b-4ac)
scanf(\ // 输入双精度浮点型变量的值要用格式声明\ disc=b*b-4*a*c;
if (disc<0) printf(\ else
{ p=-b/(2.0*a);
q=sqrt(disc)/(2.0*a);
x1=p+q;x2=p-q; // 求出方程的两个根 printf(\ // 输出方程的两个根 }
return 0; }
例4.2 输入两个实数,按代数值由小到大的顺序输出这两个数。 编写程序:
#include
float a,b,t;
scanf(\ if(a>b) {
t=a; a=b; b=t; }
printf(\ return 0; }
例4.3 输入3个数a,b,c,要求按由小到大的顺序输出。 编写程序:
#include
float a,b,c,t;
scanf(\ if(a>b) {
t=a; a=b; b=t;
} // 实现a和b的互换 if(a>c) {
t=a; a=c; c=t;
} // 实现a和c的互换 if(b>c) {
t=b; b=c; c=t;
} // 实现b和c的互换 printf(\ return 0; }
例4.4 输入一个字符,判别它是否大写字母,如果是,将它转换成小写字母;如果不是,不转换。然后输出最后得到的字符。 编写程序:
#include
char ch;
scanf(\
ch=(ch>='A' && ch<='Z') ? (ch+32) : ch; printf(\ return 0; }
例4.5有一函数: ??1(x?0)? y??0(x?0) ?1(x?0)?
编一程序,输入一个x值,要求输出相应的y值。 编写程序: 程序1:
#include
int x,y;
scanf(\ if(x<0) y=-1; else
if(x==0) y=0; else y=1;
printf(\ return 0; }
程序2:
#include
int x,y;
scanf(\ if (x>=0)
if (x>0) y=1; else y=0; else y=-1;
printf(\ return 0; }