一.上午教学内容
!=不等于
1
while(2)
{
4
3
}
1.循环起点
2.结束的条件(0或1),不满足条件退出循环
4.循环体
3.循环变量变换的规律
流程1->2->4->3->2
#include<stdio.h>
int main()
{
int i;
i=1;
while(i<=10)
{
printf("%d ",i);
i++;
}
}
当循环次数固定时用for,不知道循环多少次用while
#include<stdio.h>
int main()
{
int a,b,c;
c=scanf("%d",&a); //c是整个scanf的值,%d只能接收数字,
//成功录入一个数据,c为1;两个数据,c为2......
//否则为0
printf("%d",c);
}
! 任意一个不是0的数就是0
例如:! 1==0
在C++(.cpp文件)内getche与getch,在#include<conio.h>内
在C语言(.c)内getche与getch,在#include<stdio.h>内
#include<stdio.h>
#include<conio.h>
int main()
{
char a;
// a=getchar(); //等同于scanf("%d",&a);(输入字符)
// a=getche(); //输入什么就录入什么,省略回车(输入字符)
// a=getch(); //输入后,省略回车,直接结束,不显示录入内容(输入字符)
}
二.下午操作内容
1.练习
/*
#include<stdio.h>
int main()
{
int i;
i=1;
while(i<=10)
{
printf("%d ",i);
i++;
}
}
*/
/*
#include<stdio.h>
int main()
{
int a,b,c;
c=scanf("%d",&a); //c是整个scanf的值,%d只能接收数字,
//成功录入一个数据,c为1;两个数据,c为2......
//否则为0
printf("%d",c);
}
*/
//判断回文数
/*
#include<stdio.h>
int main()
{
int a,b;
int sum=0;
printf("please input a number:");
scanf("%d",&a);
b=a;
while(b)
{
sum=sum*10+b%10;
b/=10;
}
if(sum==a)
{
printf("是回文数\n");
}
else
{
printf("不是回文数\n");
}
return 0;
}
*/
//一个字符的密码
/*
#include<stdio.h>
#include<conio.h>
int main()
{
char a,b;
b='-';
while(a=getch())
{
printf("*\n");
if(a==b)
{
break;
}
}
printf("YES!");
}
*/
/*判断完数
#include<stdio.h>
#include<conio.h>
int main()
{
int a,b=0;
int i=1;
scanf("%d",&a);
while(a>i)
{
if(a%i==0)
{
b=b+i;
}
i++;
}
if(a==b)
{
printf("是完数");
}
else
{
printf("不是完数");
}
}
*/
2.作业
//第一题:将输入的字母大小写转化,当输入#后停止
/*
#include<stdio.h>
int main()
{
char a;
while(scanf("%c",&a)&&a!='#')
{
if(a>96&&a<123)
{
printf("%c",a-32);
}
else if(a>64&&a<91)
{
printf("%c",a+32);
}
}
}
*/
//第二题:输入任意数字,判断是否是完数,当输入字符时结束判断
/*
#include<stdio.h>
#include<conio.h>
int main()
{
int a,b=0;
int i=1;
scanf("%d",&a);
while(a>i)
{
if(a%i==0)
{
b=b+i;
}
i++;
}
if(a==b)
{
printf("是完数");
}
else
{
printf("不是完数");
}
}
*/
//第三题:输入两个浮点数,输出两数之差除以两数乘积的结果。
//在输入非数字前,程序应循环处理用户输入的每对值
/*
#include<stdio.h>
int main()
{
float a,b;
while(2==scanf("%f%f",&a,&b))
{
printf("%f",(a-b)/(a*b));
}
}
*/
//第四题:输入上限整数和下限整数,计算两数之间所有整数平方和,显示结果
//继续提示输入上限和下限整数,并显示结果,直到用户输入上限整数=或<下限为止
/*
#include<stdio.h>
int main()
{
int a,b,sum=0;
int i;
printf("输入上限整数和下限整数\n");
while(scanf("%d%d",&a,&b)&&a<b)
{
for(i=a;i<=b;i++)
{
sum=sum+i*i;
}
printf("\n平方和是从%d到%d为%d\n",a*a,b*b,sum);
printf("\n重新输入上限整数和下限整数\n");
scanf("%d%d",&a,&b);
}
}
*/
//第五题:编写一个程序读取输入,读到#字符停止,然后报告读取的空格数
// 换行字符数和所有其他字符的数量
/*
#include<stdio.h>
int main()
{
char a;
int b=0; //空格
int c=0; //换行
int d=0; //其他字符数
printf("请输入文本:\n");
while(1)
{
scanf("%c",&a);
if(a=='#') //遇到'#'就结束循环
{
break;
}
if(a==' ')
{
b++;
}
else if(a=='\n')
{
c++;
}
else
{
d++;
}
}
printf("空格数:%d\n",b);
printf("换行数:%d\n",c);
printf("其他字符数:%d\n",d);
}
*/