#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <math.h>
#include <string.h>
int main() {
char userPassword[20];
printf("Type in your password: \n");
scanf("%c", &userPassword);
if (isalpha(userPassword) == 0) {
printf("Nice");
} else {
printf("Nope");
}
return 0;
}
我正在尝试提供一个代码,用于检查密码是否仅包含字母。为什么此代码仅适用于“== 0”符号。我的朋友告诉我把这个和我的代码一起工作。 “== 0”有什么作用?
答案 0 :(得分:2)
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
protected override void OnCreate(Bundle bundle)
{
TabLayoutResource = Resource.Layout.Tabbar;
ToolbarResource = Resource.Layout.Toolbar;
base.OnCreate(bundle);
global::Xamarin.Forms.Forms.Init(this, bundle);
LoadApplication(new App());
//set the status bar color
Window.SetStatusBarColor(Android.Graphics.Color.Black);
}
}
的签名是isalpha
。
<强>参数强> c要分类的字符
返回值 如果字符是字母字符,则为非零值,否则为零。
因此,如果int isalpha ( int c )
不是alpha,则返回非零,否则返回0。
关于该计划:
c
需要scanf
,而不是char *
,即&userPassword
。 char **
没问题。scanf("%s", userPassword)
传递给char
而不是isalpha
。如果要检查字符串是否全部为alpha,则可以简单地迭代字符串并检查每个字符。像:
char *