#include "stdlib.h"
#include "stdio.h"
/*读入若干整数 以-9999结束,再以从小到大次序输出,每行10个元素*/
typedef struct link
{
int d;
struct link *next;
}Link,*PLink;
void insertSort(PLink *h)
{
PLink f,p;
int n;
if(*h==NULL)
{
*h=(PLink)malloc(sizeof(Link));
(*h)->next=NULL;
}
printf("please input:\n");
do{
scanf("%d",&n);
if(n==-9999)return;
p=(PLink)malloc(sizeof(Link));
p->d=n;
p->next=NULL;
f=*h;
while(f->next&&f->next->d<n)f=f->next;//f指向待插入节点的前节点
p->next=f->next;
f->next=p;
}while(9);
}
void printLink(PLink h)
{
int i=1;
PLink p;
p=h;
if(h==NULL)
{
printf("no list\n");return;
}
while(p=p->next)
{
printf("%-3d",p->d);
if(i++%10==0)printf("\n");
}
}
void main()
{
PLink p=NULL;
insertSort(&p);
printLink(p);
}
分享到:
相关推荐
在这个问题中,`sort`函数实现了冒泡排序,通过两层循环逐个比较数组元素并交换位置,从而实现从小到大的排序。 3. **函数定义与调用**:问题中定义了三个函数:`depart`、`sort`和`output`。`depart`函数的目的是...
按从大到小顺序排序输出合并后的整数集(去掉在两组整数中都出现的整数,以一个空格分隔各个整数)。 【样例输入】 5 1 4 32 8 7 9 -6 5 2 87 10 1 【样例输出】 87 32 10 9 8 7 4 2 -6 【样例说明】 第一...
同时,每输出10个整数后会自动换行。 综上所述,这个程序通过使用C++中的文件输入输出流,实现了从文本文件读取整数、将这些整数以二进制格式写入文件以及从二进制文件中读取特定位置的数据的功能。此外,还展示了...
in.dat里边存放有100个int型数字,请将其读出然后将其从小到大排序,并以文本的格式输出到out.dat里边保存,数字之间用空格隔开即可。
你的程序要读入一行文本,其中以空格分隔为若干个单词,以‘.’结束。你要输出这行文本中每个单词的长度。这里的单词与语言无关,可以包括各种符号,比如“it's”算一个单词,长度为4。注意,行中可能出现连续的空格...
从键盘读入8个整数存入数组a中并输出这8个数据。 ⑴求出这8个数据的和、最大值、最小值及平均值。 ⑵求这8个数据的正数之和、负数之和(或正数与负数的个数); ⑶求这8个数据的奇数之和、偶数之和(或奇数与偶数的...
题目描述中提到,从标准输入读取两组整数,每行不超过20个整数,并且每组整数中的元素都是不重复的。这意味着我们需要处理两个不同的整数序列,并对它们进行异或操作。 对于一组整数进行异或操作,我们可以使用位...
从标准输入中读入一个整数算术运算表达式,如10+52-28,计算表达式结果,并输出。 要求: 1、表达式运算符只有+、-; 2、表达式中不含圆括号、空格符,而且不会出现错误的表达式; 【输入形式】 ...
输出只有一行,是长整数A减去长整数B的运算结果,从高到低依次输出各位数字。要求:若结果为0,则只输出一个0;否则输出的结果的最高位不能为0,并且各位数字紧密输出。 【输入样例】 234098 134098703578230056 ...
在C语言中,实现整数逆序输出是一个基础但有趣的编程任务,它涉及到对数字的位操作和字符串处理。下面我们将详细探讨这个话题。 首先,理解整数逆序输出的基本思路是将一个整数转换为字符串,然后反转字符串,最后...
4. **倒序输出**:倒序输出数组元素,可以通过从数组的末尾开始遍历到开头,或者先对数组进行反转操作再逐个输出。在Python中,可以使用切片操作`[::-1]`来实现数组的反转。 以下是一个简单的Python代码示例来实现...
先从标准输入读入整数的个数(大于等于1,小于等于100),然后在下一行输入这些整数,各整数之间以一个空格分隔。 【输出形式】 在标准输出上输出出现次数最多的整数及其出现次数,两者以一个空格分隔;若出现次数...
输出只有一行,是长整数A减去长整数B的运算结果,从高到低依次输出各位数字。要求:若结果为0,则只输出一个0;否则输出的结果的最高位不能为0,并且各位数字紧密输出。[输入样例] 234098 134098703578230056 [输出...
读取一个文件中的整数,并将它们从小到大排序,最后输出排序后到另一个文件中
输出只有一行,是长整数A减去长整数B的运算结果,从高到低依次输出各位数字。要求:若结果为0,则只输出一个0;否则输出的结果的最高位不能为0,并且各位数字紧密输出。[输入样例] 234098 134098703578230056 [输出...
然后,通过一个for循环遍历从`x`到`b`的所有整数,对每个数调用`sushu`函数判断是否为素数。如果是素数,就打印出来。 扩展要求1要求程序可以循环执行,即在完成一次素数输出后,用户可以选择继续或者退出。为此,...
本题目的核心知识点是使用结构体来创建单链表,并根据输入的正整数逆序构建这个链表,最后输出链表中的元素。下面我们将详细探讨这两个关键概念。 1. **结构体**: 结构体是C/C++中定义自定义数据类型的一种方式。...
从键盘输入两个正整数,求这两个正整数的最小公倍数和最大公约数,并输出。 输入 输入包括一行。 两个以空格分开的正整数。 输出 两个整数的最小公倍数和最大公约数。 样例输入 6 8 样例输出 24 2
- `while (cin >> v)`:循环读取整数直到遇到文件结束或输入错误,将读取的每个整数添加到`s1`的末尾。 5. **计算头尾元素之和**: ```cpp len = s1.size() - 1; for (; index ; index++) { cout [index] + s1...