A. c语言输入0结束
#include<stdio.h>
voidmain()
{
inti,n,m,j=0,h=0;
printf("输入个数n ");
while(scanf("%d",&n)){
if(n==0)break;
printf("输入数字,中间以空格隔开 ");
{
for(i=0;i<n;i++)
{
scanf("%d",&m);
if(m%2!=0)
{
j++;
}
else
{
h++;
}
}
}
printf("奇数:%d ",j);
printf("偶数:%d ",h);
}
}
B. c语言中用\0做字符串结束标志 \0为什么不用\000表示
\000明显就是\0的三位八进制,所以是一样的
\00就要看后面的一位是不是数字,如果是数字也是三位八进制表示法,如果不是数字那\0就是结束标志了
C. c语言:输入若干正整数,以0结束
/*c语言:输入若干正整数,以0结束.......byMr.Kong*/
#include<stdio.h>
#defineM100
intarrin(int*a) /*将输入的整数赋值到数组中,并计算整数的个数*/
{
inti=0;
printf("输入整数:");
scanf("%d",&a[i]);
while(a[i]!=0)/*以0结束输入*/
{
i++;
scanf("%d",&a[i]);
}
returni;
}
arrout(int*a,intn) /*输出输入的整数*/
{
inti;
printf("输出整数:");
for(i=0;i<n;i++)
printf("%d",a[i]);
}
main()
{
intn,a[M];
n=arrin(a);
arrout(a,n);
}
D. c语言里面怎么输入多行数据并且以输入0结束,输入0后才对输入数据进行处理
通过getchar()得到每次输入的字符,如果不是0就存入一个buffer中,如果是0就跳出循环:
int n=0;//记录buffer中要处理字符的个数。
char ch;
char* buffer;
buffer = malloc(sizeof(char),MAX_SIZE);//MAX_SIZE是你自己定义的宏值
while( (ch=getcahr()) != '0')
{
将ch存入buffer中,记住考虑buffer存满的情况,则用realloc重新分配内存;
n++;//记录buffer中要处理字符的个数。
}
E. C语言的字符串为什么以0作为它的结尾
在C语言中没有专门的字符串变量,通常用一个字符数组来存放一个字符串。字符串总是以'