int main()
{
char ch = 0;
while (ch != '\n')
{
scanf ("%c", &ch);
printf ("%c", ch);
}
return 0;
}
这是基本的从终端读入一条命令。
很好理解,scanf一次一次读,当是'\n',便不再读入。
include <stdio.h>
int main()
{
int int_count = 0;
int letter_count = 0;
int space_count = 0;
char ch;
scanf ("%c", &ch);
while (ch != '\n')
{
if (ch == ' ')
{
space_count++;
}
else if (ch >= '0' && ch <= '9')
{
int_count++;
}
else if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z'))
{
letter_count++;
}
scanf ("%c", &ch);
}
printf ("int_count = %d\nletter_count = %d\nspace_count = %d\n",
int_count, letter_count, space_count);
return 0;
}
这段程序将读入的一条命令分别统计空格字母和数字的个数。对于第一个scanf来说,它先从缓冲区读取一个字符进行判断,结束后第二个scanf再次从缓冲区读取,执行while
语句进行判断。
比较第一个程序,对于读取顺序还是有点区别的。第一个程序ch=0;令程序进入循环。
在循环结构中,灵活运用break和continue可以使程序变得很简便。
break语句的功能是:
在switch语句中使流程跳出switch结构。
在循环语句中使流程跳出当前循环。
continue语句的功能是
在循环语句中使本次循环结束,即跳过循环体中下面尚未执行的语句,接着进行下次是否执行循环的判断
int main()
{
int n;
int flag = 0; // 0 是素数 1 不是素数
scanf ("%d", &n);
int i;
for (i = 2; i < n; i++)
{
if (n % i == 0) // 不是素数
{
flag = 1;
break; // 跳出当前的循环
}
}
if (flag == 1)
printf ("%d不是素数\n", n);
else
printf ("%d是素数\n", n);
return 0;
}
上面是一个简单的判断素数的程序,值得注意的使flag标志的使用。
{
char ch = 0;
while (ch != '\n')
{
scanf ("%c", &ch);
printf ("%c", ch);
}
return 0;
}
这是基本的从终端读入一条命令。
很好理解,scanf一次一次读,当是'\n',便不再读入。
include <stdio.h>
int main()
{
int int_count = 0;
int letter_count = 0;
int space_count = 0;
char ch;
scanf ("%c", &ch);
while (ch != '\n')
{
if (ch == ' ')
{
space_count++;
}
else if (ch >= '0' && ch <= '9')
{
int_count++;
}
else if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z'))
{
letter_count++;
}
scanf ("%c", &ch);
}
printf ("int_count = %d\nletter_count = %d\nspace_count = %d\n",
int_count, letter_count, space_count);
return 0;
}
这段程序将读入的一条命令分别统计空格字母和数字的个数。对于第一个scanf来说,它先从缓冲区读取一个字符进行判断,结束后第二个scanf再次从缓冲区读取,执行while
语句进行判断。
比较第一个程序,对于读取顺序还是有点区别的。第一个程序ch=0;令程序进入循环。
在循环结构中,灵活运用break和continue可以使程序变得很简便。
break语句的功能是:
在switch语句中使流程跳出switch结构。
在循环语句中使流程跳出当前循环。
continue语句的功能是
在循环语句中使本次循环结束,即跳过循环体中下面尚未执行的语句,接着进行下次是否执行循环的判断
int main()
{
int n;
int flag = 0; // 0 是素数 1 不是素数
scanf ("%d", &n);
int i;
for (i = 2; i < n; i++)
{
if (n % i == 0) // 不是素数
{
flag = 1;
break; // 跳出当前的循环
}
}
if (flag == 1)
printf ("%d不是素数\n", n);
else
printf ("%d是素数\n", n);
return 0;
}
上面是一个简单的判断素数的程序,值得注意的使flag标志的使用。