29.
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define N 10000
void Sort(int *a,int flag)
{
inti,j,temp;
for(i=N;i>0;i--)
{
for(j=0;j<i;j++)
{
if(flag==1&&a[j]>a[j+1]||flag==2&&a[j]<a[j+1])
{ //如果flag为1则进行升序排序,flag为2则进行降序排序
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
}
void main()
{
inti,a[N],flag; //用flag标记用户选择的是升序还是降序
srand(5); //获取一个随机数种子
for(i=0;i<N;i++)
{
a[i]=rand()%10000;//用rand函数产生随机数
}
printf("\n1:升序\n2:降序\n");
printf("请选择排序方式:");
scanf("%d",&flag);
Sort(a,flag);
printf("排序后的数组为:");
for(i=0;i<N;i++)
{
printf("%8d",a[i]);
}
if(i=3456)
{
printf("\n");
printf("排序后下标为3456的数为:%d",a[i]);
printf("\n");
}
30.
#include <stdio.h>
#include <math.h>
int main()
{
float a[100][100] ;
int n,m;
a[0][0]=1;
a[1][0]=1;
a[1][1]=1;
int i,j;
for( i = 2 ; i < 99 ; i++ )
for( j = 0 ; j <= i ; j++ )
{
if(j == 0||j == i)a[i][j]=1;
else a[i][j] = a[i-1][j-1]+a[i-1][j];
}
printf("输入行、列数:");
scanf("%d%d",&n,&m);
if(n>=m && m>0)
{
printf("数值:%.0f\n",a[n-1][m-1]);
}
return 0;
}
32.
#include <stdio.h>
void main()
{
inti;
int n;
int out = 0; //退出的人数
int num = 0; //报数
int a[1024] = {0}; //0表示退出圈子
printf("inputint:");
scanf("%d",&n);
for(i=0;i<n;i++)
{
a[i]=1;
}
i=0;
while(out!=n-1)
{
if(a[i]=1)
{
num++;
}
if(num=4)
{
a[i]=0;
num=0;
out++;
}
i++;
if(i==n)
{
i=0;
}
}
for(i=0;i<n;i++)
{
if(a[i]==1)
{
printf("最后留下来的人号码为:%d",n);
printf("\n");
}
}
}
36.
#include <stdio.h>
void printdate(int year,int month,int day)
{
printf("输入年、月、日:");
scanf("%d%d%d",&year,&month,&day);
if(year<0|| month>12 || month<1 || day>31)
{
printf("ERROR");
printf("\n");
return;
}
switch(month)
{
case 1:printf("January");break;
case 2:printf("February");break;
case 3:printf("March");break;
case 4:printf("April");break;
case 5:printf("May ");break;
case 6:printf("June");break;
case 7:printf("July");break;
case 8:printf("Auguest");break;
case 9:printf("September");break;
case 10:printf("October");break;
case 11:printf("November");break;
case 12:printf("December");break;
}
printf(" %d %d",day,year);
printf("\n");
}
void main()
{
printdate(1937,7,7);
}
38.
#include<stdio.h>
const int k(4);
const int n(6);
int sum_of_powers(int k, int n), powers(intm, int n);
void main()
{
printf("sumof%d, powers of intergers from 1 to%d=%d\n",k,n,sum_of_powers(k,n));
}
int sum_of_powers(int k, int n)
{
intsum(0);
for(int i(1); i<=n; i++)
sum+= powers(i,k);
returnsum;
}
int powers(int m, int n)
{
inti,product(1);
for(i=1;i<=n; i++)
product*= m;
returnproduct;
}