小程序(一)
来源:互联网 发布:mac os x ei系统下载 编辑:程序博客网 时间:2024/06/11 06:20
输入一串乱序的数字和一个整数。
首先将其排序,再在这个有顺序的数字串中,找出所有两个数字之和等于那个整数的数对,并打印,如果没有,那么提示重新输入。
CODE:
#include <stdio.h>
#include <string.h>
char tab[ 200 ]; //存放数字串
int num; //输入的整数
int count = 0; //数字串的长度
void serial () //得到数字串
{
printf("请输入一串无序的数字,以回车结束:\n");
scanf("%s",tab );
}
void intnumber() //得到整数
{
printf("请输入一个整数:\n");
scanf("%d",&num);
}
void sort() //从小到大排序
{
int i = 0;
int j = 0;
char temp;
count = strlen(tab);
for ( j = 0; j < count - 1; j ++ ) //排序
{
for ( i = 0; i < count - 1 - j; i ++ )
{
if ( tab[ i ] > tab[ i + 1 ] )
{
temp = tab[ i + 1 ];
tab[ i + 1 ] = tab[ i ];
tab[ i ] = temp;
}
}
}
printf("由小到大排列后的数字串为:\n");
for ( i = 0; i < count; i ++ )
{
printf("%c",tab[ i ] );
}
}
void find() //寻找两个数字之和等于num
{
int i = 0;
int j = 0;
int flag = 0;
for ( j = 0; j < count - 1; j ++ )
{
for ( i = j + 1; i < count; i ++ )
{
if ( num == tab[ i ]-'0' + tab[ j ]-'0' ) // 减去'0'是为了将字符转为对应的整型数值
{
if (flag == 0)
printf("\n配对情况如下:\n");
printf(" %c + %c = %d \n", tab[ j ], tab[ i ], num );
flag = 1;
}
}
}
if ( flag == 0 )
printf("\n没有找到,请重新输入!");
}
void main()
{
serial();
intnumber();
sort();
find();
}
- 小程序(一)
- 小程序(一)
- 练手小程序(一)
- android小程序(一)
- SHELL SCRIPT 无聊小程序(一)
- 小程序(一) 字符串过滤
- c语言小程序实例(一)
- js常见小程序(一)
- 小程序学习笔记(一)
- java算法小程序(一)
- 小程序之入门篇(一)
- 小程序的学习(一)
- 支付宝小程序开发(一)
- wechat小程序学习(一)
- java实现小程序开发(一)
- 小程序即时通讯聊天控件(一)
- 一些C++的小程序(一)
- 程序小思考(一)
- 将除法转换为乘法的MagicNumber
- Android 如何将一个button放在屏幕中间
- cgroup--cgroup 测试
- SSH框架中配置Hibernate使用proxool连接池
- 谈谈sizeof这个运算符
- 小程序(一)
- Random Forests原理
- 10^n个整数(亿级)的排序 .
- python enumerate 的用法
- log4j日志等级
- js借助ActiveXObject实现创建文件
- log4cplus
- Swing 线程之SwingUtilities.invokeLater()
- 浏览器页面设置导致的打印位置偏移