匿名用户

1级

2014-11-18 回答

#include

#include

#include

intmain()

{

charstr[10]={0};

inta,b,num,i,j;

gets(str);

num=strlen(str);

a=atoi(str);

if(num%2==0)

{

if(str[num/2-1]

str[num/2-1]=str[num/2-1]+1;

for(i=0,j=num-1;i<=num/2;i++,j--)

{

str[j]=str[i];//2443算出来变2442,错误

}

if(str[num/2-1]

//str[num/2]=str[num/2]+1;

for(i=0,j=num-1;i<=num/2;i++,j--)

{

str[j]=str[i];

}

}

if(num%2!=0)

{

str[num/2]=str[num/2]+1;//不需要上来就+1,未必有这个必要,

//比如231,应是232,不是242

for(i=0,j=num-1;i<=num/2;i++,j--)

{

str[j]=str[i];

}

}

b=atoi(str);

printf("%d,%d,%d\n",a,b,b-a);

return0;

}

===============================================

按照你的算法,我写了个实现:

#include

#include

#include

intmain()

{

charstr[10]={0};

inta,b,num,i,j;

intindex;

do{

gets(str);

num=strlen(str);//如果直接输入回车,str是空字符串,下面的计算无法进行

}while(num==0);

a=atoi(str);

index=num/2-1;

/*找出离数字“中心”最近的第一个不对称的位置*/

while(index>=0&&str[index]==str[num-index-1])

{

index--;

}

if(index>=0)

{

if(str[index]

{

intindex2=num/2;

/*如果是9,不能再累加了,必须往高位找*/

while(str[index2]=='9')

{

index2--;

}

/*由于str[index]

*所以index2肯定能找到,不会出现index2<0的情形

*/

str[index2]=str[index2]+1;

str[num-index2-1]=str[index2];

/*高位累加后,中间位置可以清零,数会比较小*/

for(i=index2+1;i

str[i]='0';

}

}

for(i=0,j=num-1;i<=index;i++,j--)

{

str[j]=str[i];

}

}

b=atoi(str);

printf("%d,%d,%d\n",a,b,b-a);

return0;

}

c语言程序设计对称数,c语言程序设计--对称数相关推荐

  1. 第5关:C循环-寻找完数-------C语言程序设计技术(循环结构程序设计2)

    第5关:C循环-寻找完数-------C语言程序设计技术(循环结构程序设计2) #include<stdio.h>int main(void){ /*********Begin****** ...

  2. 第4关:字符串中各类字符数的统计-------C语言程序设计技术(循环结构程序设计1)

    第4关:字符串中各类字符数的统计-------C语言程序设计技术(循环结构程序设计1) #include<stdio.h>int main(void){ /*********Begin** ...

  3. 求翻转数循环结构C语言,翻转课堂在C语言程序设计课程中的应用

    裴明涛+梁玮 摘要:针对c语言程序设计课程中存在的基本语法讲解与编程思想讲解无法兼顾的问题,通过分析c语言程序设计课程以及翻转课堂的特点,提出结合翻转课堂与以程序设计思想为主的教学方式并对教学效果进行 ...

  4. 201803考试批次2C 程序设计语言,201803考试批次2可视化程序设计(VB)D卷

    201803考试批次2可视化程序设计(VB)D卷 2018-12-15 903 201803考试批次2可视化程序设计(VB)D卷 可视化程序设计(VB) 一 .单项选择题 (共 10 题.0 / 20 ...

  5. c语言程序设计复习提纲,C语言程序设计复习提纲

    C语言程序设计复习提纲 C语言程序设计复习题: 1.理解以下术语的含义:数组.函数.地址 指针 指针变量 直接访问 间接访问.结构体 2.用起泡法对10个数由小到大排序(P134例题) 3.用递归方法 ...

  6. C语言程序设计教学探讨,C语言程序设计多媒体教学探讨

    文章结合作者开发设计C语言多媒体教学课件的实践,探讨了多媒体教学课件的开发研制方法,对解决C语言教学中的重点和难点起到一定的作用.同时,结合C语言的教学特点提出了几点教学体会,以提高教学效率和教学成果 ...

  7. C语言找出4个最大和4个最小数,济南大学C语言程序设计教案:C语言实验课程第四课.doc...

    济南大学C语言程序设计教案:C语言实验课程第四课 C语言实验课程第四课 实验一 数组与函数.数组与指针 一.实验目的 1 掌握数组名作为函数参数的含义.使用方法. 2 掌握多维数组作为函数参数的使用方 ...

  8. c语言%3c与 的优先级,C语言程序设计第3章顺序程序设计.ppt

    C语言程序设计,主讲:王奇志,,4 课时,第3章 顺序程序设计,<C语言程序设计>,导航目录,知识点.重点.难点,知识点: 数据的存储 C中常见的类型 变量和常量 运算符和表达式 重 点: ...

  9. 江西师范大学2017年C语言考试,2018年江西师范大学程序设计(C语言)考研初试大纲...

    科目代码.名称: 865程序设计(C语言) 适用专业: 085211 计算机技术.085212 软件工程 一.考试形式与试卷结构 (一)试卷满分 及 考试时间 本试卷满分为150分,考试时间为180分 ...

  10. c程序设计语言如何补零,C语言程序设计(补)-中国大学mooc-题库零氪

    第1章 概述 第1讲 C语言概述随堂测验 1.C语言是面向过程的语言. 第2讲 C语言基本语法成分随堂测验 1.C语言也被称作函数语言. 第3讲 C语言环境介绍随堂测验 1.C常用的环境包括: A.V ...

最新文章

  1. java方法重载和重写在jvm_重载和重写在jvm运行中的区别(一)
  2. 数据库开发——MySQL——foreign key
  3. OpenMap教程3 –使用MapHandler构建基本的地图应用程序–第2部分
  4. 朋友写的一个中国象棋游戏,JAVA代码
  5. Cantor表(洛谷-P1014)
  6. 043、JVM实战总结:动手实验,自己动手模拟出频繁Young GC的场景
  7. 程序员斗图时最爱用哪些表情包?拿走不谢!
  8. python归并排序算法实现_排序算法之归并排序(附 Python 与 JS 实现)
  9. html中字体 楷体_html常用的字体样式
  10. Linux下安装禅道
  11. 专科程序员,学历可能会成为发展障碍
  12. 手机上最好用的五笔输入法_手机输入法正在暴露你的年龄,九宫格和全键盘,你用的是哪一种?...
  13. go get xxx timeout
  14. 三菱q系列plc 和电脑socket_三菱Q系列Socket通讯(套接字通讯)讲解
  15. 2811: [Apio2012]Guard
  16. 第五人格服务器维护中请稍后登录,第五人格:国际服维护重大故障,刚开精华二,却登录不了游戏...
  17. 使用 jquery.wordexport.js导出的Word排版
  18. Android中拍照完就给图片加水印,Android调用相机拍照并添加水印
  19. 7、TM4单片机学习之串口功能
  20. Oracle 数据统计计算

热门文章

  1. 一年翻 3 倍,装机量 6 亿台的物联网操作系统又放大招!
  2. 性能飙升160%!阿里云发布第七代ECS、云原生数据库PolarDB-X等重磅新品
  3. AI 终极问题:我们的大脑是一台超级计算机吗?
  4. 远程办公一晃一天,环境搭建履步维艰
  5. 稳定=死亡!废掉一个人的最好办法,就是让他瞎努力......
  6. 顶配 12699 元、没有 5G,“浴霸三摄”的 iPhone 到底长什么样?
  7. 马云谈 5G 危机;腾讯推出车载版微信;Ant Design 3.22.1 发布 | 极客头条
  8. 用 Python 分析了 10000 场吃鸡数据,原来吃鸡要这么玩!
  9. 开源巨献:2017 年 Google 开源了这些超赞的项目
  10. 微信官方都辟谣,可真有技术人用 AI、大数据实现头像添加圣诞帽了!