猿问

求解:这个代码怎么实现输入数字后就提示输入正确,结束循环?

#include "stdio.h"

void main()

{

int i=0;

char n=0;

while(n!=99999)

{

if((scanf("%d",&n)==0))

{

scanf("%d",&n);

scanf("%s",&n);

printf("输入错误!请重新输入\n");

continue;

}

else

printf("您输入的是:%d\n",n);

}


慕瓜2161724
浏览 2050回答 3
3回答

按照自己的节奏前行

#include <stdio.h> #include <sys/types.h> #include <regex.h> //这个库你要自己去找,别人写好的 int main(int argc,char** argv) {     int status ,i;     int cflags = REG_EXTENDED;     regmatch_t pmatch[1];     const size_t nmatch = 1;     regex_t reg;     const char * pattern = "^\\d+$";     char * buf ;     scanf(buf);     regcomp(&reg,pattern,cflags);//编译正则模式     status = regexec(&reg,buf,nmatch,0);//执行正则表达式和缓存的比较     if(status == REG_NOMATCH)         printf("No match\n");     else if (0 == status)     {         printf("比较成功:");         for(i = pmatch[0].rm_so;i<pmatch[0].rm_eo;++i)putchar(buf[i]);         printf("\n");     }     regfree(&reg);     return 0; }

慕莱坞8333017

1964041974296510643941863226420744896421418648418686419972208552911075205413085263194419737420763186186528752288328542058520907754297859775020762296303065194218652851752117532853983076408853963199631897430116528753008632753872083218642308548752908642339637728624660584026106153172485961517238317263078608473840852955072983951

按照自己的节奏前行

sorry,char类型好像不支持99999你要用int才行

按照自己的节奏前行

你输入99999不就结束了
随时随地看视频慕课网APP
我要回答