C语言 scanf输入回车或空格时停止输入
发布网友
发布时间:2022-11-14 21:06
我来回答
共3个回答
热心网友
时间:2024-10-20 10:10
scanf("%d",&a[i]); 无此功能,当你连续按回车时,它继续等待输入数据。
可以用gets(s);再sscanf读数。用strlen(s)判断为空行,则停止输入:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int i,a[10];
char s[20];
for(i=0;i<10;i++) {
gets(s);
if (strlen(s) < 1) break;
sscanf(&s[0],"%d",&a[i]);
printf("%d\n",a[i]);
};
printf("i=%d",i);
}
热心网友
时间:2024-10-20 10:10
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i,a[10];
char c;
for(i=0;i<10;++i)
{
scanf("%d%c",a+i,&c);
printf("%d\n",a[i]);
if(c=='\n') break;
}
return 0;
}
热心网友
时间:2024-10-20 10:11
#include<stdio.h>
main()
{
int k,i,a[10];
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
printf("是否继续输入 1:是 or 0 :否.请选择\n");
scanf("%d",&k);
if(k==0)
break;
}
system("pause");
}
感觉这种方法不怎么好,但可以解决简单的程序的跳出循环,如果有好的方法,要发给我啊