#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define M 1000
int main()
{
char a[M];
int b[M];
char c[11];
int i=0,j,num,t,len = 0,flag = 1;
char *p,*q;
gets(a);
for(i = 0,p = a ; i<=strlen(a) ;p++,i++)
{
if(*p>='0' && *p <= '9')
{
len++;
flag = 1;
}
else if(flag == 1 )
{
strncpy(c,p-len,len);
c[len] = '\0';
num = atoi(c);
if( t < num )
{
t = num;
j = i - len+1;
}
flag = 0;
len = 0;
}
}
printf("%d\n",j);
return 0;
}
是In file included from \\temp\\Main.c:2:
//bin/gcc/bin/../lib/gcc/mingw32/3.4.5/../../../../include/stdlib.h:317: error: syntax error before "double"错误
#include "stdafx.h"
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define M 1000
int main()
{
char a[M];
int b[M];//未使用
char c[11];
int i=0,j,num,t,len = 0,flag = 1;
char *p,*q; //q指针未使用
gets(a);
for(i = 0,p = a ; i<=strlen(a) ;p++,i++)
{
if(*p>='0' && *p <= '9')
{
len++;
flag = 1;
}
else if(flag == 1 )
{
strncpy(c,p-len,len);
c[len] = '\0';
num = atoi(c);
if( t < num )//这一句代码错了,因为t未赋值就去比较了,在编译器要求很高的时候就是错误
{
t = num;
j = i - len+1;
}
flag = 0;
len = 0;
}
}
printf("%d\n",j);
return 0;
}追问
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define M 1000
int main()
{
char a[M];
int b[M];//未使用
char c[11];
int i=0,j,num,t,len = 0,flag = 1;
char *p,*q; //q指针未使用
gets(a);
for(i = 0,p = a ; i<=strlen(a) ;p++,i++)
{
if(*p>='0' && *p <= '9')
{
len++;
flag = 1;
}
else if(flag == 1 )
{
strncpy(c,p-len,len);
c[len] = '\0';
num = atoi(c);
if( t < num )//这一句代码错了,因为t未赋值就去比较了,在编译器要求很高的时候就是错误
{
t = num;
j = i - len+1;
}
flag = 0;
len = 0;
}
}
printf("%d\n",j);
return 0;
}追问
#include "stdafx.h"这句不对
追答恩,这句你删除掉
温馨提示:答案为网友推荐,仅供参考