一、实验内容
1.实验要求:字符判断
输入一个字符,判断它如果是小写字母输出其对应大写字母;如果是大写字母输出其对应小写字母;如果是数字输出数字本身;如果是空格,输出“space”;如果不是上述情况,输出“other”。
代码:
#include <stdio.h>
int main()
{
char a;
scanf("%c",&a);
if(a>='a'&&a<='z')
{
a=a-32;
printf("%c",a);
}
else if(a>='A'&&a<='Z')
{
a=a+32;
printf("%c",a);
}
else if(a>='0'&&a<='9')
{
printf("%c",a);
}
else if(a==' ')
{
printf("space");
}
else
{
printf("other");
}
return 0;
}
程序运行结果:
2.实验要求:年龄问题
输入一个学生的生日(年:月:日),并输入当前日期(年:月:日),计算该生的实际年龄(周岁)。
代码:
#include<stdio.h>
int main()
{
int a,b,c,year,month,day,age;
printf("请输入今天的日期:
");
scanf("%d:%d:%d",&a,&b,&c);
printf("请输入学生的生日:
");
scanf("%d:%d:%d",&year,&month,&day);
age=a-year;
if(b>month)
{
printf("学生的年龄是%d周岁",age);
}
else if(b==month)
{
if(c>day||c==day)
{
printf("学生的年龄是%d周岁",age);
}
else if(c<day)
{
age=age-1;
printf("学生的年龄是%d周岁",age);
}
}
else if(b<month)
{
age=age-1;
printf("学生的年龄是%d周岁",age);
}
return 0;
}
程序运行结果:
3.实验要求:判断三角形类型
输入三个整数,判断由其构成的三角形的类型(等边三角形、等腰三角形、等腰直角三角形、直角三角形、一般三角形以及非三角形)
代码:
#include <stdio.h>
#include <math.h>
int main()
{
int a,b,c;
printf("请输入三角形三边长:
");
scanf("%d %d %d",&a,&b,&c);
if(fabs(a+b)>c&&fabs(a-b)<c)
{
if(a*a+b*b==c*c&&a==b||a*a+c*c==b*b&&a==c||b*b+c*c==a*a&&b==c)
{
printf("是等腰直角三角形");
}
else if(a==b&&b==c&&c==a)
{
printf("是等边三角形");
}
else if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a)
{
printf("是直角三角形");
}
else if(a==b&&a!=c||b==c&&b!=a||a==c&&b!=c)
{
printf("是等腰三角形");
}
else
{
printf("是一般三角形");
}
}
else
{
printf("数据错误");
}
return 0;
}
程序运行结果:
4.实验要求:看商品猜价格小游戏
代码:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int a,b;
printf("请输入商品的价格: ");
scanf("%d",&a);
srand(time(NULL));
b=rand()%100+1;
if(a==b)
{
printf("商品归你了");
}
else if(a>b)
{
printf("太大了");
}
else if (a<b)
{
printf("太小了");
}
printf("商品的价格是%d",b);
return 0;
}
程序运行结果:
5.实验要求:虫子吃苹果问题(完成此题加1分)
你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个完整的苹果?
输入n,x和y(均为整数),输出剩下的苹果个数。
测试数据: 10 4 9
5 3 16
代码:
#include<stdio.h>
int main()
{
int n,x,y,a,b,s;
printf(" 你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个完整的苹果? ");
printf("请输入一箱苹果的个数和虫子吃苹果的时间和吃苹果的速度: ");
scanf("%d%d%d",&n,&y,&x);
a=y/x;
b=n-a;
s=b-1;
if(b>0&&y%x==0)
{
printf("还剩下%d个苹果 ",b);
}
else if (y%x!=0&&s>0)
{
printf("还剩下%d个苹果 ",s);
}
else
{
printf("还剩下0个苹果 ");
}
return 0;
}
程序运行结果:
二、本次课知识点总结
- 1. 掌握字符型数据(字符型常量和变量、字符串常量、字符型数据的输入输出格式和输入输出函数
(1) 字符型数据类型标识符char。在内存中占用一个字节,以所存字符的ASCII码存储 。字符ASCII码值为0-255。
(2) 字符常量:用单引号括起来的单个普通字符或转义字符。’a’ –97 ‘A’—65 ‘0’—48 ‘ ’--10
(3) 转义字符:反斜线后面跟一个字符或一个代码值表示转义字符及其含义。
(4) 字符变量:字符型变量用来存放字符常量,只能放一个字符。一个字符变量在内存中占一个字节。
(5) 既可以以字符形式输出又可以以整数形式输出。以字符型数据输出时,先将存储单元中的ASCII码值转换成相应字符,然后再输出。以整数形式输出时,直接将ASCII码作为整数输出。字符型数据还可以进行算数运算,相当于他们的ASCII码值参与运算
(6) 字符串常量:用双引号(“”)括起来的字符序列字符常量与字符串常量不同。比如‘a’ 长度为1个字符,“a”长度为2个字符 。
(7) 字符型数据的输入输出c格式符:在输入输出函数中,字符型数据的格式控制使用%c表示,用来输入输出一个字符。
(8) putchar函数(字符输出函数)格式: putchar( c ) putchar函数(字符输出函数)格式: putchar( c )
2. 如何产生随机数
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{ int a,b;
srand(time(NULL));
a=rand()%100;
b=rand()%100;
printf("a=%d,b=%d ",a,b);
return 0;
}
三、实验总结
1.字符型数据类型的转换,大写字母和小写字母之间差32,并且小写字母代表的数据大。
2.输入函数中不能忘记加取地址符。
3.if的嵌套是不能忘记大括号的匹配问题。