#include<stdio.h>
#include<string.h>
void main()
{
char a[100];
scanf("%s",a);
int len=strlen(a);
int key=1;
int i;
if(a[0]=='_'||(a[0]>='a'&&a[0]<='z')||(a[0]>='A'&&a[0]<='Z'))
{
for(i=1;i<len;i++)
{
if(a[0]=='_'||(a[0]>='a'&&a[0]<='z')||(a[0]>='A'&&a[0]<='Z')||(a[i]>='0'&&a[i]<='9'))
key=1;
else key=0;
}
}
else key=0;
if(key==1)
printf("Y");
else printf("N");
}
请问我的代码为啥在字符串中出现空格或其它符号时输出还是N呢?
不对,是输出还是Y...
两个é®é¢
ä¸ä¸ªæ¯ å¦ææç©ºæ ¼ï¼é£ä¹ä¸è½ç¨scanf %sï¼ å 为è¿ä¸ªéå°ç©ºæ ¼å°±ä¼ç»æ¢ï¼æ æ³è¯»å ¥å®æ´è¾å ¥ã éè¦ç¨gets
第äºä¸ªï¼ å½åºç°éæ³åç¬¦ï¼ èµå¼key=0;åï¼å°±åºè¯¥break
å¦åä¸ä¸ä¸ªå符åæ³ï¼å°±ä¼åèµå¼key=1
äºå®ä¸ï¼å½åºç°ä¸ä¸ªéæ³çæ åµä¸ï¼ å·²ç»ä¸éè¦ç»§ç»å¤æäºã
ä¸ä¸ªæ¯ å¦ææç©ºæ ¼ï¼é£ä¹ä¸è½ç¨scanf %sï¼ å 为è¿ä¸ªéå°ç©ºæ ¼å°±ä¼ç»æ¢ï¼æ æ³è¯»å ¥å®æ´è¾å ¥ã éè¦ç¨gets
第äºä¸ªï¼ å½åºç°éæ³åç¬¦ï¼ èµå¼key=0;åï¼å°±åºè¯¥break
å¦åä¸ä¸ä¸ªå符åæ³ï¼å°±ä¼åèµå¼key=1
äºå®ä¸ï¼å½åºç°ä¸ä¸ªéæ³çæ åµä¸ï¼ å·²ç»ä¸éè¦ç»§ç»å¤æäºã
温馨提示:答案为网友推荐,仅供参考