C语言中如何表达:"输入一个空行结束循环"?
发布网友
发布时间:2024-05-11 10:55
我来回答
共5个回答
热心网友
时间:2024-06-09 08:29
你的意思是按键盘上enter键结束么?
回车+换行 = ENTER 分别对应ASCII码的0xd和0xa
http://baike.baidu.com/view/15482.htm ASCII码表
我默认你是认为回车是结束标志
while(1)
{
char a;
a = getchar();
if(a == 0xa)
break;
}
就是这样
热心网友
时间:2024-06-09 08:23
动态分配数组 malloc
增加分配 realloc
--------------------------------
#include "stdio.h"
int main(void)
{
int *x;
int n=0;
x = (int *) malloc(sizeof(int));
while(1)
{
scanf("%d",&x[n]); printf("n=%d value=%d\n",n+1,x[n]);
n++;
x = (int *) realloc(x,sizeof(int) * (n+1));
}
getch();
return 0;
}
===============
打入:
12 34 56
n=1 value=12 // 输出
n=2 value=34 // 输出
n=3 value=56 // 输出
78 90
n=4 value=78 // 输出
n=5 value=90 // 输出
_ // 光标在这里.
热心网友
时间:2024-06-09 08:24
我认为用while循环比较方便,当然其他类型的循环也可以的
ch=getchar();
while(ch!=‘ ’)注意‘’里边有空格符,敲下空格键就可以了!
{
这里输入循环体;
ch=getchar();
}
热心网友
时间:2024-06-09 08:28
NoNoNo
while((c=getchar())!=' ');
热心网友
时间:2024-06-09 08:22
char str[200];
while(scanf("%s",str))
{
if(str[0] == '\0')
break;
}