当前位置:首页 » 编程语言 » c语言输入数值后怎么确认
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言输入数值后怎么确认

发布时间: 2022-05-20 22:56:57

A. c语言scanf函数,在输入数据的时候,是按什么来判定数据输入完毕的呢

每个数都有赋值然后按下回车就可以判定了啊,不是非得回车当间隔,如果是scanf("%d,%d,%d,&a,&b,&c")的话就是拿逗号判定间隔的,每个数都接收到赋值了,然后按下回车,这样判定输入完毕

B. C语言怎么确定int数组输入了几个数

首先,要明确您的输入在何种情况下表示终止,是空格,还是回车?。。
就像字符串,用scanf()就是遇到空格后,将空格前的字符串读入,用gets()就是遇到回车后把整行读入。。
如果说您的输入是在回车后终止的,有个简单的办法,就是在每读取一个数字后,判断一下用户是敲空格还是回车。。
程序代码如下:
#include
<stdio.h>
int
main(void)
{

int
a[100];

int
i;

scanf("%d",
&a[0]);

i
=
1;

while
((int)getchar()
!=
10)

{

scanf("%d",
&a[i]);

i++;

}

printf("一共%d个数\n",
i);

system("pause");

return
(0);
}
运行结果如下:
但是这个程序有很多问题,比如用户在输入空格后,再敲回车,就退出不了了。。
其实通常情况是这么做的,就是自己设定个结束标志,比如当用户输入
-1
的时候,终止输入。。
如果情况更复杂的话,估计就只能以字符串形式输入,然后再一个字符一个字符的判断了。。

C. c语言中如何怎么判断输入的是数字

#include <stdio.h>
#include <string.h>

// 枚举类型:自然数,整数,小数 , 未知
enum TYPE {Natural,Integer,Float,Unkonwn};

/*
一个合法的数字(包括自然数,整数,小数)的格式是:
[+-](可选) + [0个或多个数字] + [小数点](可选) + [0个或多个数字]
比如:

+1
1
-1

+3.14
3.14
-3.14

+3.
3.
-3.

+.123
.123
-.123

都是合法的数字

*/
enum TYPE check(char s[])
{
int length = strlen(s);
int start = 0 , end = length-1;
// 去开始空白字符
while(start < length && s[start]==' ' || s[start]=='\t'){start++;}
// 去结尾空白字符
while(end >=0 && s[end]==' ' || s[end]==' '){end--;}

// 是否负数标识
bool isNegative = false;
// 是否小数标识
bool isFloat = false;
// 是否有整数部分
bool hasIntegerPart = false;
// 是否有小数部分
bool hasDecimalPart = false;

for(int i = start ; i <= end ; i++)
{
if(s[i] == '-' || s[i] == '+')
{
if(i == start)
isNegative = (s[i] == '-');
else
return Unkonwn;
}
else if(s[i] == '.')
{
if(!isFloat)
isFloat = true;
else
return Unkonwn;
}
else if(s[i] >= '0' && s[i] <='9')
{
if(!isFloat)
hasIntegerPart = true;
else
hasDecimalPart = true;
}
else
{
return Unkonwn;
}
}

if(isFloat)
{
if(hasIntegerPart || hasDecimalPart)
return Float;
else
return Unkonwn;
}
else
{
if(!isNegative)
return Natural;
else
return Integer;
}
}
int main(int argc, char *argv[])
{
char s[100];
enum TYPE type;
while(1)
{
scanf("%s",s);
type = check(s);
switch(type)
{
case Natural:
printf("%s\n","Natural");
break;
case Integer:
printf("%s\n","Integer");
break;
case Float:
printf("%s\n","Float");
break;
case Unkonwn:
printf("%s\n","Unknown");
break;
}
}

return 0;
}
/*
测试数据:

+1
1
-1

+3.14
3.14
-3.14

+3.
3.
-3.

+.123
.123
-.123

*/

D. c语言中如何判断输入的是字符还是数字

1、可以用sacnf或gets函数直接接收输入的字符串,然后用循环遍历字符串中每一个字符,判断其是字母还是数字。

2、可以用循环调用getch()或getchar()函数来一个一个字符的接收输入,同时判读输入的是字母还是数字。

3、假设字符c,满足 (c>='a'&& c<='z')|| (c>='A' && c<='Z')就是字母,满足 (c>=0 && c<=9)就是数字。

(4)c语言输入数值后怎么确认扩展阅读:

getch():

所在头文件:conio.h

函数用途:从控制台读取一个字符,但不显示在屏幕上

函数原型:int getch(void)

返回值:读取的字符

例如:

char ch;或int ch;

getch();或ch=getch();

用getch();会等待你按下任意键,再继续执行下面的语句;

用ch=getch();会等待你按下任意键之后,把该键字符所对应的ASCII码赋给ch,再执行下面的语句。

E. C语言中怎样设置输入数据后按回车确定

?????
当你输完需要的数据,按回车,自动的哇
不用设置
你数据没输完的话,按回车不管用
不是会退出,是程序已经运行完了,自己退出了
你有没有发现这时候DOS的框闪了一下?
解决的方法是,在程序最后的}之前加一句
getch();
意思是需要有操作才能继续运行
程序在这里已经运行完了,结果显示出来了,再随便按个键退出

F. C语言2021在控制台执行时输入数据后再怎么做

一般的程序都有输入和输出, 程序对输入的数据加工、计算、处理后,再输出。 C语言程序也是如此, 输入数据后, 可以进行各种处理,运算,然后输出结果。
比如:输入3个数,按从小到大的顺序输出来。 有输入、处理 和输出。

G. c语言中如何确定输入内容为数字 ps:只能输入一次输入的,输入的内容确定为数字后,该数字还要参加运算

用%s格式接收字符
,再判断接受的每一位是不是大于等于0且小于等于9
是的话
就为数字

H. C语言中如何判断输入的是正确的数

举例:
假如你需要用户输入的是一个二位数(比如:52)
如果用户输入:cc然后回车,那么你可以先获取用户整体输入(以回车符结束)放入数组,然后通过转换得到它的ASCII值,若比9大则出错咯,进入重新输入.
某些高级语言就直接能判断类型.
这里给出一个小的判断程序:
//假定你希望用户输入数字
#include
#include
#include
int
main()
{

int
i
=
getchar();

while
(i
>
57
||
i
<
48
)

{

i
=
getchar();

}

//这里你可以自己实现将ASCII码转换位十进制数

cout
<<
i
<<
endl;

return
0;
}