云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > ACM程序设计 赛题样例

ACM程序设计 赛题样例

  • 62 次阅读
  • 3 次下载
  • 2025/5/1 18:51:14

{

if((x+=m)>L) x-=L; if((y+=n)>L) y-=L; }

printf(\,t); }

敲七

Problem

输出7和7的倍数,还有包含7的数字例如(17,27,37...70,71,72,73...)

Input

一个整数N。(N不大于30000)

Output

从小到大排列的不大于N的与7有关的数字,每行一个。

Sample Input 20

Sample Output 7 14 17

#include #include #include #include

#define MAX_INPUT 30000

int main(void) {

size_t digits = 0; int range, temp;

const char *iter = NULL;

printf(\请输入一个不大于%d的数: \, MAX_INPUT); scanf(\, &range); temp = range;

while (temp) { temp /= 10; ++digits; }

char *buffer =

(char *)malloc(sizeof (char) * digits + 1); assert(buffer);

for (temp = 7; temp <= range; ++temp) { if (!(temp % 7)) { printf(\, temp); continue; }

snprintf(buffer, digits + 1, \, temp);

for (iter = buffer; *iter; ++iter) if (*iter == '7') { printf(buffer); printf(\); break; } }

free(buffer);

return 0; }

#include void fen(int x); void main() { int n,i;

printf(\请输入一个不大于30000的整数\\n\); scanf(\,&n); for(i=1;i

}

void fen(int x) { int a,b,c,d;

a=x000000;

b=(x000000-a)/10;

c=(x00000-a-10*b)/100;

d=(x000-a-10*b-100*c)/1000; if(a==0) a=1; if(b==0) b=1; if(c==0) c=1; if(d==0) d=1;

if(x%7==0||a%7==0||b%7==0||c%7==0||d%7==0) printf(\,x); }

#include void main() {

int n,i; scanf(\,&n); for(i=7;i<=n;i++) {

if(i==7||i%7==0) {

printf(\,i); } } }

#include #include

int countNumber(int v ) {

int i = 1 ;

for( i ; ( v /= 10 ) != 0 ; ++ i ) ; return i ; }

/***************************************************/

void findSeven( void ) {

int num = 0 , i = 1 , j = 0 , k = 1 , t = 0 ; scanf( \ , &num ) ; for( i ; i <= num ; ++i ) {

if( i % 7 == 0 ) printf(\ , i ); else {

t = countNumber( i ) ; for( j = 1 ; j <= t ; ++j ) {

if( ( ( i / k ) % 10 ) == 7 ) {

printf(\ , i ); break ; }

k *= 10 ; } k = 1 ; } } }

/***************************************************/

int main( void ) {

findSeven() ; system( \ );

搜索更多关于: ACM程序设计 赛题样例 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

{ if((x+=m)>L) x-=L; if((y+=n)>L) y-=L; } printf(\,t); } 敲七 Problem 输出7和7的倍数,还有包含7的数字例如(17,27,37...70,71,72,73...) Input 一个整数N。(N不大于30000) Output 从小到大排列的不大于N的与7有关的数字,每行一个。 Sample Input 20 Sample Output 7 14 17 #include #include

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com