用c语言如何描述非数字值

作者&投稿:德鹏 (若有异议请与网页底部的电邮联系)
c语言中怎样表示当输入非数字值时,循环结束~

可以使用scanf来输入数字,并用其返回值来判断。
函数名:scanf
所在头文件: stdio.h
原型:int scanf(const char *format,...);
功能:
从标准输入stdin (标准输入设备,一般是键盘)中读内容的通用子程序,可以按格式(format)读入多个字符,并保存在对应地址的变量中,变量地址由参数传入。
调用形式:
scanf("",);
变量地址要求有效,并且与格式说明的次序一致。
返回值:
返回成功赋值的数据项数,读到文件末尾出错时则返回EOF。

所以如果输入的是合法的数值,返回值将是设定的变量地址个数,比如
scanf("%d%d",&a,&b);
如果正确的话返回值将是2。
如果返回值不是变量地址的个数,那么就代表有非法字符输出,即所说的非数字值。

以输入int值为例,下面这个程序实现了一个没什么用处的功能,仅供理解上述方法。
函数名:test
功能:循环读入整数,当输入非数字值时结束循环。
代码实现:
#includevoid test(void){ while(1) { int v, ret; ret = scanf("%d",&v);//每次输入一个整型数值并存在v中 if(ret != 1) break;//判断返回值,如果非1则退出循环。 printf("%d
", v);//输出读入的v值 }}

#include
int main( )
{
int sum = 0,n;
for( ;scanf("%d", &n)==1; ) //当输入非数字时(不包括回车),返回0结束循环,如a b等
sum += n;
printf("sum = %d
", sum);
return 0;
}

因为double类型数据占用8个字节,通过运算符sizeof可以判断: 如果参数arg为double类型,则
sizeof(arg)的值是8,在循环条件中可以这样描述
while(sizeof(arg) == 8) {
......
}
当然这个方法不够完美,假如arg是构造类型,其长度也恰好是8,通过sizeof()判断,则会出现错误。因此建议你将想过代码,或算法贴上来,以便大家给你出主意。

以字符串的形式读入double的数字 ,然后判断 每一位的啊斯克码值是否在48-57之间

数字的范围是0到9,其他的都是非数字的。
int i;
while(i<0 || i>9)
{
......
}
就这样

你想判断的是什么 比较字符串吗?


C语言如何表达非。
C语言 "非" 运算 用 惊叹号表示。它是1目运算符,(即只需一个操作数的运算)。例如:int a=0, b;b= !a; \/\/这是把 非a 的结果 赋值给 b printf("%d", b);--- If( (i%2)==0){..} \/\/ 这句 是: 如果 “i是偶数”为真 则执行 {..}。If( ! ((i%...

如何用C语言描述“或、且、非”关系?
1、C语言中用逻辑运算符来描述或、且、非的关系,问题中的或运算,通过||运算符来表示。2、C语言中关系运算符来描述变量的大小关系,需要注意问题中的大于等于和小于等于,C语言通过>=和<=两个运算符来描述,而并不像问题中的符号表示。3、最终,用C语言描述的表达式为:a>=10 || a<=0 ...

用c语言如何描述非数字值
因为double类型数据占用8个字节,通过运算符sizeof可以判断: 如果参数arg为double类型,则 sizeof(arg)的值是8,在循环条件中可以这样描述 while(sizeof(arg) == 8) { ...} 当然这个方法不够完美,假如arg是构造类型,其长度也恰好是8,通过sizeof()判断,则会出现错误。因此建议你将想过代码,...

c语言如何表示一个非数?
当s=1;e=225;f=0;负无穷 e=255;f!=0;非数

C语言中的 与或非运算
如果a和b都为真,则结果为真,如果a和b中有一个条件为假,则结果为假。2、逻辑或 在C语言中逻辑或用||表示。举例:a||b(其中a、b都代表一个条件)如果a和b有一个或以上为真,则结果为真,二者都为假时,结果为假。3、逻辑非 在C语言中逻辑非用!表示。举例:!a(a代表一个条件)如果a...

c语言非怎么表示
和它本身之外,不能被任何数整除的数(1不是素数)。也就是说素数是这样的整数,它除了能表示为它自己和1的乘积以外,不能表示为任何其它两个整数的乘积。非素数的定义就很明了了,素数以外的数都是非素数,在C语言中,求素数的方法,就是从2开始,依次判断该数是否可以被2以上到该数以下的数整除...

C语言基本数据类型与或非的运算方法
3、非(NOT)逻辑非运算,仅有一个运算操作数,所以是一元逻辑运算。运算规则:一变零,零变一。即操作数为1时结果为0,操作数为0时结果为1。C语言的基本运算:算术运算,主要包括的就是加,减,乘,除和取余运算,其中需要注意的是取余运算又称为模运算,在百分之的两边也都是整数,并且百分之取...

C语言中非一个常数等于多少,非0等于1吗?非1=0吗?
一、C语言中非操作为逻辑运算一种,符号为!。形式为 !expr 其中expr可以为表达式,变量或者常量。二、对于逻辑操作而言,只有真和假两种结果,也就是1和0。三、在逻辑运算中,所有参与运算的操作数,都会转为逻辑值,即真\/假参与运算。对于常量,如果值为0则假,其它值均为真。四、于是对于任意的...

求c语言,与,或,非运算函数
按位“与”、“或”和“非”运算是C\/C++中标准运算符,不需要另外编写函数。与运算: c = a & b;或运算: c = a | b;非运算: ~a;非运算: ~b 另外,!是逻辑运算符,对于a,如果a 为 0,!a = 1,如果a 不为 0,则!a = 0。

C语言里面的“与、或、非”表示什么意思?
或:输入条件有1即输出1;一个1也没有才输出0。 非:输出结果与输入条件取反。 0变1,1变0。 异或:(两输入门)仅有一个输入条件为1时输出为1;否则为0。 (多输入门)校验输入条件有奇数个条件满足时为1,其余为0。 补充关于异或的理解方式: 仅当两输入取 不同 的值时异或结果为1;否...

杂多县17022598055: C语言中怎么表示非数字?? -
别娜扶济: 什么叫非数字,把数字当字符使用?这个简单啊,把数字加个单引号就ok,例如: '5',这是字符,而不是5块钱的5

杂多县17022598055: 急!!!用c语言 怎么判断输入的是非数字字符串?? 请各位帮忙 -
别娜扶济: 只要判断输入的字符的ASCII码不在数字0~9的ASCII值范围就行了:scanf("%s",str); for(i=0;i<strlen(str);i++) if (str[i]<'0'||str[i]>'9') ...;我写了个大概,你要怎么处理判断结果,自己再补充按你补充的说法,就是碰到非数字就提示吧: scanf("%s",str); for(i=0;i<strlen(str);i++) if (str[i]<'0'||str[i]>'9') { printf("error"); return;} printf("%d\n",atoi(str)); return;

杂多县17022598055: c语言非数值算法 -
别娜扶济: #include<stdio.h> void put(char,int,int); void main() { int i,j,k,n; printf ("Input a number: "); /*输入要求输出的行数 */ scanf ("%d",&n); for(i=0;i<n;i++) {/*循环输出N行 */ if(i>(n-1)/2) k=n-i-1; else k=i; put('*',(5-2*k-1)/2,k+2); printf("\n"); } } ...

杂多县17022598055: c语言中,什么叫做非数值运算算法?能不能具体举例说明一下,哪一类的算法叫做非数值运算算法? -
别娜扶济: 逻辑运算 0&1=1 1&1=1等

杂多县17022598055: C语言问题:非数值问题是如何编出来的 -
别娜扶济: 书上的都是基础,一般着重于语法,数据结构和算法.而用到的库函数却很少.通常编其他的都是需要其他库函数的.就是在程序开头部分用include把你需要的库包含进来,具体有哪些库可以看C语言的相关手册.涉及到图形编程的C语言有相应的库,但是专业的图形库,一般都是使用OpenGL.

杂多县17022598055: c语言怎么判断一个变量里面的值是否不为数字啊 -
别娜扶济: int JudgmentDouble( int n_ID ) { CString str_temp = _T(""); GetDlgItem(n_ID)->GetWindowText(str_temp); if ( str_temp.GetLength(){ //AfxMessageBox("请在空白处输入适当的数值!"); //GetDlgItem(n_ID)->SetFocus(); return 0; } else { int...

杂多县17022598055: 当用户输入q或其他非数字值时,循环结束.怎么表示非数字值……?
别娜扶济: #include<stdio.h> void main() { int n; for(;;) { if(!scanf("%d",&n)) { printf("quit\n"); break; } else printf("notquit\n"); } }

杂多县17022598055: 判断字符变量C的值不是数字也不是字母时,应用表达式 -
别娜扶济: C>=48中的48是字符对应的ASCII码,数字的ASCII码从48到57,大写字母为65到90,小写字母为97到122,在以上范围内表示是数字或字母,对它取非表示既不是数字也不是字母,所以选D. 答案:D

杂多县17022598055: C语言如何判断输入一串字符里是否有不是数字的字符 -
别娜扶济: #include <stdio.h>#include <string.h> void main() { int i,n,k=0; char str[1000]; gets(str); n=strlen(str); for(i=0;i<n;i++) if(str[i]<'0'||str[i]>'9') k=1; if(k==1) printf("输入的字符串中包含非数字的字符."); else printf("输入的字符串中不包含非数字的字符."); }

杂多县17022598055: C语言里逻辑非怎么理解啊?!(说简单点) -
别娜扶济: 逻辑操作只有两个结果:假、真,一般用0和非0数(任何非零值都可以,通常用1代替)作为其数字表达方式. 逻辑操作中,看到0,理解为假;看到非0数,理解为真即可.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网