程序功能:简化的插入排序,输入一个正整数 n(0
(2)main主函数完成数据的输入与插入成功后数据的输出
(3)数组a的作用保存n个整数,数组a定义成全局变量
怎么感觉之前做过了呢。变量使用全局
#include <stdio.h>
int n=0;
int a[10];
int insert(int x)
{
int i=0,j=0;
for(i=0;i<n;i++)
{
if(x<a[i])
{
for(j=n;j>i;j--)
a[j] = a[j-1];
break;
}
}
a[i] = x;
n++;
return 1;
}
int main()
{
int i,x;
printf("输入数组大小:");
scanf("%d",&n);
printf("输入%d个递增整数:",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
printf("输入要插入的整数:");
scanf("%d",&x);
insert(x);
for(i=0;i<n;i++)
printf("%d ",a[i]);
}
复制
24
120
1307674368000
#include <stdio.h>
int main()
{
int a[20001];//储存每一位所得到的数
int temp,digit,n,i,j=0;//temp每次的得数 digit每次得数的位数
scanf("%d",&n);
a[0]=1;//从1开始乘
digit=1;//位数从第一位开始
for(i=2;i<=n;i++)
{
int num=0;
for(j=0;j<digit;j++)
{
temp=a[j]*i+num;//将一个数的每一位数都分别乘以i,
a[j]=temp%10;//将一个数的每一位数利用数组进行储存
num=temp/10;
}
while(num)//判断退出循环后,num的值是否为0
{
a[digit]=num%10;//继续储存
num=num/10;
digit++;
}
}
for(i=digit-1;i>=0;i--)//倒序输出每一位
printf("%d",a[i]);
printf("\n");
return 0;
}