c语言 如何限定输入密码长度 如何限定用户选择操作只能输入数字?

如题所述

scanf("%[0-9]",s);//只能输入数字字符到字符串数组s,忽视其他字符

追问

还有这种操作? 不是只能%s %d这种吗

数字到字符串?

不是除了数字就是字符?

追答

还有别的符号,可以百度scanf的格式字符串写法

追问

找了一下

但是我还是没看到您这个%(0-9)啥意思_(:з」∠)_

没看懂

追答

请百度百科scanf格式串
意思就是只接收字符0到9范围的输入,其他字符被舍弃

追问

行 我做百度一下
但是我不仅仅想要输入0-9 而是所有数字都可以 就是字符串

那应该

怎么改呢

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-10-28
下面是输入一个数字或字符的
#include<stdio.h>
int main()
{
char c,c1;
while(1)
{
c=getchar();
c1=getchar();
if(c>='0'&&c<='9')
break;
printf("error!\n");
}追问

您好 嗯 有的不是太懂 定义c1有啥用?

这个是只能输入数字?

getchar不能只能接受字符吗

怎么接受数字?

第2个回答  2019-10-28
1234567试一下int i,a;for(i=0;i<6;i++){ a=getch(); printf("*");}追问

printf *号啥意思?

能用scanf吗 想搞混合密码

c语言 如何限定输入密码长度 如何限定用户选择操作只能输入数字?
scanf("%[0-9]",s);\/\/只能输入数字字符到字符串数组s,忽视其他字符

c语言 如何定义一个整形变量 同时限定输入位数?
假设限定位数为n(n < 10),设置循环读入各个阿拉伯字符(含+、-,其他非阿拉伯字符舍弃),并将读入的字符同步转换为一个整数,循环结束后就可得到所需的整形变量的值。代码:int i,n,digit,sign = 1,num = 0;scanf("%d",&n); \/\/ 读入限制位数for(i = 0; i < n; ++i) { digit =...

比如输入年月日,应如何用C语言限定输入格式?
加IF语句 判断是输入数字是否是 字符

在C语言里边,如何限定一个变量的赋值范围
你可以用fgets或者fread将输入读近来,然后解析成数字,判断其范围,满足条件的话,赋值给a。int a;char str[10];fgets(str, 10, stdout);int b = -1;b = atoi(str);if(b == 0 || b == 1)a = b;

斐波那契数列c语言编程如何限定输入范围
void fibo(int n){ int i,count=2;double x1,x2,x; x1=1; x2=1;printf("%6.0f\\t%6.0f\\t",x1,x2);for(i=1;i<=(n-2);i++){ x=x1+x2;printf("%6.0f\\t",x);x1=x2;x2=x;count++;if(count%10==0)printf("\\n");} printf("\\n");} void main(){ int n...

C语言:当用户输入q或其他非数字值时,循环结束?请问这样如何实现?
不能,因为y都double,sizeof(y)相当于sizeof(double),所以这个判断没起作用 如果你输入字母,结果会一直是0 想结束就别用while循环了

java如何判断用户输入的是几位数字?题目:用户名必须为4位数字否则报错...
上面的是C语言的代码啊,呵呵。下面才是JAVA的,其实思路很简单。直接让用户输入一个数:Scanner sc = new Scanner(System.in);int num = sc.nextInt();得到这个数字以后,有两种方法判断这个数是几位数。方法一:把这个数字转为字符串,String s = String.valueOf(num);然后用s.length()得到...

C语言,如何将数字添加到一个已有的字符数组中?
数组要实时添加数字进去有点麻烦,如果是空数组就一个for循环按顺序输入就行了。如果是想把一个数字插入某个位置,那用一个变量temp记录插入的位置,先在原来的数组temp位置开始的数全部先后移一位,然后再a = waiting[temp];(a是你想插入的数字) 本回答由电脑网络分类达人 崔良飞推荐 举报| 答案纠错 | 评论 0...

VBS 怎么判断4个数中,有三个一样,或是有两个一样,或是各不相同?
一个字符串无论如何也不等于一个整数, 尽管他们字面上是一样的:"8"<>(不等于号)8 所以if的判断式的值永远是false, 总是执行else部分的语句. 我们可以这么修改 Dim a,b,c,d a=inputbox("a是:","输入半径") b=Inputbox("b是:","输入半径") d=Inputbox("答案:","输入答案") d=int(d) '在...

c语言重要的基础知识点有哪些?
2、define PI 3.1415926;这个写法是错误的,一定不能出现分号。3、每个C语言程序中main函数是有且只有一个。4、在函数中不可以再定义函数。5、算法: 可以没有输入,但是一定要有输出。6、break可用于循环结构和switch语句。7、逗号运算符的级别最低,赋值的级别倒数第二。概念常考到的:1、编译预...

相似回答