#include<stdio.h>
void main()
{
int i = 0;
int j = 0;
for (; i < 10; i++)
{
for (; j < 10; j++)
{
printf("haihaiahi ");
}
}
}
执行结果:打印10个 haha
分析: 在第一层for循环当中, i 的初始值为0。进入第二层for循环,j 的值随着循环条件开始自增,当 j=10时,第二层 for 循环结束,返回到第一层for循环当中,而后 i 的值开始自增,当 i=1时,进入第二层for循环后,因为 j 的值没有改变,j 没有初始值,故 j 的值仍然是10,直接回到第一层for循环,以此类推,当 i 的值增加为10时,程序结束。故打印十次 haihaihai。
———————————————————————————————————————————
getchar函数
#include<stdio.h>
void main()
{
int ret = 0;
int ch = 0;
char mima[20];
printf("请输入密码:\n");
scanf("%s", mima);
while (ch = getchar() != '\n')
{
;
}
printf("请确认密码,输入Y或者N\n");
ret = getchar();
if (ret == 'Y')
{
printf("确认成功\n");
}
else
{
printf("确认失败\n");
}
}
解析:while循环当中的getchar 目的是读入你在输入时敲回车, enter在c语言中相当于一个字符,如果不读入这个字符,那后面确认部分的代码就无法执行,程序会直接结束。第二个getchar和第一个作用相同,这里主要注意的是把enter作为一个字符,然后用getchar函数去读取多余的字符。(今天就这些)。