手机号码是一串长度为11位的数字,并且第一位必须是1。现在给出一个字符串,我们需要判断这个字符串是否符合手机格式。
int n,a[n]是什么操作呀,n都没有值,不能这么声明数组,其次题目输入的是字符串,而不是数字,要接收这整个字符串的话,得使用字符数组,建议不使用long long这种过大的整数类型,虽然能存11位,但有可能给出的数字几十位,或者字符串中含有非数字的其他字符
试试这种方法
#include<stdio.h>
int main()
{
int i, n[i];
for (i = 0;; i++)
{
n[i] = getchar();
if (n[i] == '\n')
break;
}
if (i == 11 && n[0] == 49)
printf("1");
else
printf("0");
return 0;
}