原题链接:数字整除
题目分析
一直本真电脑累我不累的思想 反正就是看是不是17的倍数那就干脆除17看有没有余好了
#include<stdio.h>
int main()
{
int i,sum;
char str[200];
while(scanf("%s",str)&&str[0]!='0') //百度的ACM写法
{
sum=0;
for(i=0;str[i]!='\0';i++)
{
sum=sum*10+str[i]-'0';//转成整形
sum=sum%17;
}
printf("%s\n",sum?"0":"1"); //3目运算 如果为0就选0不是就是后者
}
return 0;
}0.0分
5 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
#include<stdio.h> int main() { int n=1,i,j,a[10],b[10],c[10],d[10]; for(i=0;i<n;i++) { scanf("%d",&a[i]); n++; if(a[i]==0) n--; } for(i=0;i<n-1;i++) { b[i]=a[i]/10; c[i]=a[i]%10; d[i]=b[i]-5*c[i]; } for(i=0;i<n-1;i++) { if(a[i]%17==0&&d[i]%17==0) printf("1\n"); else printf("0\n"); } return 0; } 大佬能帮忙看看哪有问题么?运行结果是对的啊,万分感激char n[100]; for(int i=0;i<10;i++){ scanf("%s",n); long long len,d=0; len=strlen(n); for(int i=0;i<len;i++){ d=d+(n[i]-'0')*pow(10,len-i-1); } 我在这里得到的 d 仍然不是要得到的? 和你代码里的 sum 有啥区别呀?# include <stdio.h> int main (void) { int i , sum ; char a[301]; scanf ("%s" , a); do{ for (i = 0 , sum = 0 ; a[0] != '0' && a[i] != '\0' ; i++ ) { sum = sum * 10 + a[i] - '0' ; } if(sum == 0) break; i = sum%10 * 5; if ((sum / 10 - i)%17 == 0) printf ("1\n"); else printf ("0\n"); scanf ("%s" , a); }while (a[0] != '0'); return 0; } 这个程序哪里有问题吗?