求2013蓝桥杯C语言本科组B的第七题错误票据的程序答案
楼上的网友说的很简单,实际上因为每一行不确定到底要放多少个数,很难计算。
我是一个字符一个字符输入的,如果是数字就储存,如果遇到\0就进行atoi(),如果遇到\n就结束
最后用判断\n是否与输入相等。
思路很简单,实现很复杂。。
考试的时候这道题我也没做出来。。
现在运行成功。
#includestdio.h
#includestdlib.h
const int N=10000;
int mysort(const void *a,const void*b)
{
return *(int*)a-*(int*)b;
}
int main()
{
int count=0;
int n,i=0,j=0,k=0;
int a[N];
char ch[7];
scanf(“%d\n”,n);
for(count=0;countn;)
{
scanf(“%c”,ch[j]);
if(ch[j]=’9’ch[j]=’0′)
j++;
else if(ch[j]==’ ‘)
{
a[k++]=atoi(ch);
j=0;
}
else if(ch[j]==’\n’)
{
count++;
a[k++]=atoi(ch);
j=0;
}
}
k–;
qsort(a,k,sizeof(int),mysort);
i=a[0];
for(j=1;jk;j++)
{
if(a[j]==i||a[j]==i+2)
printf(“%d”,a[j]);
i=a[j];
}
return 0;
}
C语言蓝桥杯的题目,求帮助
看完题目才发现原来你只想问一下后面的数据规模。。。。
这个意思就是,你的程序提交上去之后会有很多组测试数据,然后它告诉了你,如果你想要通过X%的数据测试,需要将相应的n和Hi考虑到这么大,数据量过大之后,可能会发生超内存,超时,或者数组无法开到这么大的情况,需要考虑的问题就变得更多了,所以,数据越大,数据量越大,题目的难度就越大。
蓝桥杯C语言题目
#includestdio.h
int main(){
char code[]={‘Z’,’A’,’B’,’C’,’D’,’E’,’F’,’G’,’H’,’I’,’J’,’K’,’L’,’M’,’N’,’O’,’P’,’Q’,’R’,’S’,’T’,’U’,’V’,’W’,’X’,’Y’};
char num[10];
int sgln=0,sang,yu,len=0;
sang=2019/26;
yu=2019%26;
num[len]=code[yu];
len++;
while(sang!=0){
if(sang!=0yu==0)
yu=(sang-1)%26;
else
yu=sang%26;
sang=sang/26;
num[len]=code[yu];
len++;
}
len–;
for(;len=0;len–){
printf(“%c”,num[len]);
}
}
C语言中能满足形如: ab * cde = adb * ce 这样的算式一共有多少种呢
#include stdio.h
void main()
{
int a,b,c,d,e;
for(a=1;a=9;a++)
for(b=1;b=9,b!=a;b++)
for(c=1;c=9,c!=b,c!=a;c++)
for(d=1;d=9,d!=a,d!=b,d!=c;d++)
for(e=1;e=9;e++)
{
if((a!=b)(a!=c)(a!=d)(a!=e)(b!=c)(b!=d)(b!=e)(c!=d)(c!=e)(d!=e))
{
if((a*10+b)*(c*100+d*10+e)==(a*100+d*10+b)*(c*10+e))
printf(“%d %d %d %d %d\n”,a,b,c,d,e);
}
}
}
for(e=1;e=9,e!=a,e!=b,e!=c,e!=d;e++)这行代码,如果e=a或者e=b或者e=c或者e=d就跳出循环了,不再向下执行。