c语言练习


[例3.1] 使用putchar()函数显示字符
#include <stdio.h>
main()
{ char a,b;
a='B';
b='\117'; /* 117是字符'O'的八进制ASCII码 */
putchar(a);
putchar(b);
putchar('X'+1);
putchar('\n');
}

[例3.2] 使用getchar()函数从键盘上读一个字符
#include <stdio.h>
main()
{ char ch;
ch=getchar();
putchar(ch);
}

[例3.4] 将键盘输入的两个整数互换之后输出。
#include <stdio.h>
main()
{ int a,b,t;
printf("请输入a,b:");
scanf("%d,%d",&a,&b);
printf("交换之前:a=%d,b=%d\n",a,b);
t=a;
a=b;
b=t;
printf("交换之后:a=%d,b=%d\n",a,b);
}

[例3.5] 将输入的一个大写字母转换为小写字母输出。
#include <stdio.h>
main()
{ char ch;
printf("输入一个大写字母:");
ch=getchar();
ch=ch+32;
printf("对应的小写字母为:");
putchar(ch);
}

[例3.6] 输入一个时间数据,用汉字输出表示的时间。如输入如“10:20:34”时,输出“10时20分34秒”。
#include <stdio.h>
main()
{ int hour,minute,second;
printf("输入一个时间(hh:mm:ss):");
scanf("%d:%d:%d",&hour,&minute,&second);
printf("您输入的时间是"%d时%d分%d秒\n",hour,minute,second);
}

[例3.7] 输入一个3位整数,将这个数逆序组成一个新的数输出。如输入“123”,输出“321”。
#include <stdio.h>
main()
{
int OldData,NewData,a,b,c;
printf("输入一个三位数:");
scanf("%d",&OldData);
a=OldData%10; /* 原数的个位 */
c=OldData/100; /* 原数的百位 */
b=OldData/10%10; /* 原数的十位 */
NewData=a*100+b*10+c; /* 组成新的数 */
printf("%d的逆序数为%d\n",OldData,NewData);
}

[例3.8] 由计算机随机出一道两位数的加法题,并让用户回答。
本例不要求对用户的输入是否正确进行比较。
#include <stdio.h>
#include <stdlib.h>
main()
{ int a,b,c,d;
randomize();
a=random(90)+10; /* random(90)产生0~89之间的随机数 */
b=random(90)+10;
c=a+b;
printf("计算:%d + %d =",a,b);
scanf("%d",&d);
printf("正确的结果为:%d\n",c);
printf("您输入的数为:%d\n",d);
}

