我的第四个程序
/*我的第四个程序
程序目的:
1.输出你的名字
2.输出你的年龄
3.输出你的学历
4.输出乘法表
5.输出菱形图案
6.输出n组双色球号码
7.数组转置演示
8.输出两个数之间的素数
作者:维珍 (辅导老师:*******)
日期:2008.4.13
*/
#include <math.h>
#include<stdlib.h>
#include<time.h>
#include<stdio.h>
#define LEN 5
int mainMune(void);
int one(void);
int two(void);
int three(void);
int four(void);
int five(void);
int six(void);
void seven(void) ;
void eight(int start, int end) ;
int outNumber(void);
void initMatrix(int num[LEN][LEN]) ;
void outMatrix(int num[LEN][LEN]) ;
void changeMatrix(int num[LEN][LEN]) ;
void outPrime(int start, int end) ;
int main()
{
int key;
while(1)
{
mainMune();
key=getch();
system("cls");
switch(key)
{
case '1': one();break;
case '2': two();break;
case '3': three();break;
case '4': four();break;
case '5': five();break;
case '6': six();break;
case '7': seven();break;
case '8': eight(100, 200);break;
case 'q': return;
}
printf("按任意键返回\n");
getch();
system("cls");
}
}
int mainMune()
{
printf("1.输出你的名字\n");
printf("2.输出你的年龄\n");
printf("3.输出你的学历\n");
printf("4.输出乘法表\n");
printf("5.输出菱形图案\n");
printf("6.输出n组双色球号码\n");
printf("7.数组转置演示\n");
printf("8.输出两个数之间的素数\n");
printf("q.退出\n");
}
int one()
{
printf("lucy\n");
}
int two()
{
printf("20\n");
}
int three()
{
printf("本科\n");
}
int four()
{
int i,j;
for(i=1;i<=9;i++)
{
for(j=1;j<=i;j++)
printf("%d*%d=%2d ", i,j,i*j);
printf("\n");
}
}
int five()
{
int i,j;
for(i=1;i<=7;i++)
{
for(j=1;j<=abs(i-4);j++)
printf(" ");
for(j=1;j<=7-2*abs(i-4);j++)
printf("*");
printf("\n");
}
}
int six()
{
int i;
int n;
srand(time(NULL));
do
{
printf("输入组数:");
scanf("%d", &n);
}while(n>20||n<1);
for(i=0;i<n;i++)
outNumber();
}
int outNumber()
{
int i,j,t,a[7];
for(i=0;i<6;i++)
{
a[i]=rand()%33+1;
for(j=0;j<i;j++)
{
if(a[i]==a[j])
{
i--;
break;
}
}
}
a[6]=rand()%16+1;
for(i=1;i<6;i++)
{
for(j=0;j<i;j++)
if(a[i]<a[j])
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
for(i=0;i<6;i++)
printf(" %2d", a[i]);
printf("+%2d\n", a[6]);
}
void seven(void)
{
int num[LEN][LEN] ;
initMatrix(num) ;
outMatrix(num) ;
printf("\n");
changeMatrix(num);
outMatrix(num) ;
}
void initMatrix(int num[LEN][LEN])
{
int i, j ;
for(i = 0;i < LEN;i++)
{
for(j = 0;j < LEN;j++)
{
num[i][j] = i*LEN+j+1 ;
}
}
}
void outMatrix(int num[LEN][LEN])
{
int i, j ;
for(i = 0;i < LEN;i++)
{
for(j = 0;j < LEN;j++)
{
printf("%2d ", num[i][j]) ;
}
printf("\n") ;
}
}
void changeMatrix(int num[LEN][LEN])
{
int i,j,t;
for(i=0;i<LEN;i++)
{
for(j=i+1;j<LEN;j++)
{
t=num[i][j];
num[i][j]=num[j][i];
num[j][i]=t;
}
}
}
void eight(int start, int end)
{
do
{
printf("输入起始值(1~10000):") ;
scanf("%d", &start) ;
}while(start > 10000 || start < 1) ;
do
{
printf("输入终止值(2~0000):") ;
scanf("%d", &end) ;
}while(end > 10000 || end < 2 || start > end) ;
outPrime(start, end) ;
}
void outPrime(int start, int end)
{
int i, j ;
int temp ;
for(i = start;i <= end;i++)
{
temp = i/2 ;
for(j = 2;j < temp;j++)
{
if(i % j == 0)
break ;
}
if(j == temp)
{
printf("%d ", i) ;
}
}
}