C语言有趣的输入问题

作者&投稿:豫些 (若有异议请与网页底部的电邮联系)
你可以输入字符串,然后在检查字符串里面是否有非数字字符,有的话就提示重新输入。没有的话将字符串转换成数字就行了。

int balance;
char s[20]="";
retry:
scanf("%s",s);
for(i=0;i<strlen(s);i++)
{
if(!isalpha(s[i]))
{ /*包含非数字字符*/
printf("输入错误,请重新输入");
goto retry;
}
}
if(strcmp("",s))
{ /*输入为空,直接按了回车*/
printf("请重输入数据");
goto retry;
}
/*将字符串转化成整数*/
balance = atoi(s);

/*
如果你的balance为浮点类型,也只需稍作修该就可以了
*/

没看明白意思,要做什么呀?

≥P Yf[0

拿去

#include <stdio.h>

int main()
{
unsigned long int nNumber;
while( 1 != scanf("%u", &nNumber) )
getchar();
printf("Input Integer is : %d\n", nNumber);
fflush( stdin );

double fNumber;
while( 1 != scanf("%lf", &fNumber) )
getchar();
printf("Input Double is %lf\n", fNumber);
fflush( stdin );
}

关于C语言的一个问题,可能会比较有趣~

非空白符使 scanf() 在流中读一个匹配的字符并忽略之。例如,"%d,%d" 使 scanf() 先读入一个整数,读入中放弃逗号,然后读另一个整数。如未发现匹配,scanf() 返回。


scanf("please enter a score %d",&score);

在这里 please enter a score %d 成了输入格式

所以输入时要这样输入
比如成绩为90应输入 please enter a score 90
试试吧

1.之所以再次编译值不改变,乃是因为系统在加载可执行镜像时所选取的栈的初始地址是相对固定的,a就在这个栈上,而且程序开始到main函数执行,这是一段按部就班的例程,没有什么变数,所以a的地址不变是可以理解的。

2.scanf("%d",20000)这句合法并没有什么难以理解的地方,因为指针归根到底也只是一个地址值罢了,直接用地址值和直接用指针,这没有任何区别,最多就是编译器会警告你一下。

不知道你说的“”自己定义一个函数比如f(*pointer);然后在用这种方法就会报错“”是什么意思
看下面代码
#include
int ge(int *p)
{
*p=3;
return 0;
}
int main()
{
int a;
printf("%d
",&a);
ge(2293532);
printf("%d
",a);
return 0;
}
如果你的意思是像上面代码一样,那么这段代码我已试过了,并没有报错,完全可以正常运行,最后输出3.

欢迎继续讨论

教你如何使用C语言编写简单小游戏
答:这样学习程序设计,就不会是一件艰苦 ,枯燥的事,它变得象电脑游戏一样充满好奇,富有乐趣. 1, 总是从Hello,world开始 学习编程的第一个程序,一般就是打印一个亲切的词语——"Hell o,world!".让我们来看看这个最简单的C程序:#incolude /*把输入输出函数的头文件包含进来*/int main(){printf("...

一个语言学问题,有趣
答:当然,我们也会发现英语中有疑问词的句子,例如"what is your name?"是用降调,这是因为这个句子在形式上实际上符合陈述句。字调究竟从何而来,这个比较难说。字调,包括声调的起源是语言学上一个挺大的问题。其实但凡牵扯到这种起源的问题,都是很麻烦的课题。潇雪真的没有能力为楼主解答,很抱歉。

鸡兔同笼问题C语言程序编写
答:鸡兔同笼,共有35个头,94条腿,求鸡和兔子各有多少只?include<bits/stdc++.h>using namespace std;int main(){int a,b,c,d;a=35,b=94;c=2*a-b/2;d=b/2-a;cout<<"c="<<c<<"d="<<d<<endl;return 0;} c=23 d=12 ...

语言,是很有趣的
答:一查字典「厚手」只有厚的意思啊,但我确实在哪里看到过有表达丰厚的意思,转念一想,输入「手厚い」,没错,是它,殷勤的,热诚的,丰厚的,优厚的。日语跟中文一样,有很多词语前后字位置一对调意思全然不同。4今天还读到了下面这段跟语言有关的话:中文说坠入爱河,英语里说 fall in love,法语...

有哪些有趣的语言学观点?
答:外语中的洞察:语言与理解的微妙互动 俄语对蓝色的深度区分,这个例子揭示了语言对细节感知的独特影响,甚至可能影响理解的深度。汉语的同音字丰富,需要依赖上下文来解析意义,而韩语和日语的同音字问题则挑战着人们的认知。更有趣的是,阅读时我们甚至可以不拘泥于字母顺序,如中文,通过上下文和音节结构来...

C语言程序设计的有趣题目
答:写一个简单的劲舞团练习手法的程序, 控制台就可以, 首先显示出一系列上下左右的箭头,然后你自己按上下左右与之对应,按的上下左右键也要显示出箭头符号来。最后再判断有多少正确多少错误的。

婴儿从小教她叽叽喳喳乱叫说鸟语大了会怎么样?
答:教婴儿叽叽喳喳乱叫,说鸟语的做法并不科学,反而可能影响婴儿的语言发展。婴儿在成长过程中,需要接受正确的语言输入和模仿的刺激,才能逐渐形成自己的语言能力。如果婴儿一直受到的是乱叫、不规范的语音输入,她可能无法准确理解和模仿正确的语言表达方式。因此,婴儿从小应该接受正确的语言教育,教她说标准的...

input hypothesis特点
答:2、既有趣又有关 要使语言输入对语言的习得有利,必须对它的意义进行加工,输入的语言材料越有趣、越关联,学习者就会在不知不觉中习得语言。3、非语法程序安排 语言习得关键是足量的可理解的输入。如果目的是“习得”而不是“学得”,按语法程序安排的教学不仅不必要,而且不可取。4、足够的输入量...

浅谈如何培养小学生语文口语交际能力?
答:5.提供反馈和纠正:及时的反馈和纠正可以帮助小学生发现并纠正语言上的问题。可以在小组活动中指导小学生,纠正他们的发音、语法、词汇和语境等方面的错误。6.培养语言兴趣:培养小学生对语言的兴趣可以促进他们的口语交际能力的发展。可以通过有趣的故事、诗歌、游戏等方式来激发小学生的语言兴趣。同时,也...