main()
{ int t,i,j,n, a[35]={0};
srand(time(0));
for(i=0; i<35; )
{ n=rand()%35+1 ;
for(j=0;j<=i;j++)
if (a [j] ==n )
break;
if (jmain()
{ int j, i,t;
int d[35]={0};
srand(time(0));
for(i=0;i<35;i++)
d[i]=i+1;
for(i=0;i<35;i++)
{ j=rand()%34+1;
t=d[j];d[j]=d[i];d[i]=t; }
for(i=0;i<35;i++)
{printf("NO_%-3d %3d ",i+1,d[i]);
if ((i+1)%5==0) printf("\n") ; }
getch();
}
5、求1!+3!+...+11!之和
6、有30个人,其中有男人、女人和小孩,在一家饭馆里吃饭共花了50先令,每个男人各花3先令,每个女人各花2先令,每个小孩各花1先令,问男人、女人和小孩各有几人?
7、编写程序,求使等式xy*840=yx*1470成立数。
8、输入十进制整数,显示打印出十六进制。
9、统计文本单词的个数 ,输入一行字符,统计其中有多少个单词,单词之间用空格分隔开。
#include "stdio.h"
main()
{char c,string[80];
int i,num=0,word=0;
gets(string);
for(i=0;(c=string)!=;i++)
if(c== ) word=0;
else if(word==0)
{ word=1;
num++;}
printf("There are %d word in the line.n",num);
}
10、编写检验密码程序,用户输入密码后,若正确,则显示信息:Now, you can do something!。若输入错误,则显示信息:Invalid password. Try again!,并控制至多重复3次。3次出错,给出信息:I am sorry, bye-bye!。
#include "stdio.h"
#include "string.h"
main() {
char str[10];
int k;
for (k=0; k<3;k++) {
printf ("Please enter your password:");
gets(str);
if (strcmp (str, "913911")) {
if (k<2)
printf ("Invalid password. Try again!\n");
else
printf ("Invalid password. ");
}
else
break;
}
if (k<=2)
printf ("Now, you can do something!\n");
else
printf ("I am sorry, bye-bye!\n");
getchar();
}
11、验证哥德巴赫猜想:任意一个大于等于6的偶数都可以分解为两个素数之和。编程从键盘输入这样的数打出结果。
基本思想:n为大于等于6的任一偶数,可分解为n1和n2两个数,分别检查n1和n2是否为素数,如都是,则为一组解。如n1不是素数,就不必再检查n2是否素数。先从n1=3开始,检验n1和n2(n2=N-n1)是否素数。然后使n1+2 再检验n1、n2是否素数,… 直到n1=n/2为止。
利用上面的prime函数,验证哥德巴赫猜想的程序代码如下:
#include "math.h"
int prime(int m)
{ int i,k;
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0) break;
if(i>k)
return 1;
else
return 0;
}
main()
{ int x,i;
printf("please input a even number(>=6):n=");
scanf("%d",&x);
if (x<6||x%2!=0)
printf("data error!n");
else
for(i=2;i<=x/2;i++)
if (prime(i)&&prime(x-i))
{
printf("%d+%dn",i,x-i);
printf("验证成功!");
break;
}
}
12、编写一个程序,输入若干字符串,然后按升序将诸字符串打印输出。
13、编写一个程序,接收从键盘输入的10个整数,存入一维数组,将前后元素依次对调后打印输出。
#include “stdio.h”
main()
{
int a[10], j, k, x;
for (j=0; j<10; j++)
scanf (“%d”, &a[j]);
for (j=0, k=9; j<5; j++, k--)
{
x = a[j]; a[j] = a[k]; a[k] = x;
}
for (j=0; j<10; j++)
printf (“%d ”, a[j]);
}
14、编写一个程序,求每种货物当天的售出金额及商店的总收入。
已知某商店销售货物的账单如表所示。
货物名称
单价(元/公斤)
销售量(公斤)
sweets(糖果)
fruit(水果)
pastry(点心)
12.80
15.30
20.00
120
82
44
15、三、已知学生三门课程基本信息如下。计算学生三门课程平均成绩后,列表输出学生的姓名、数学、英语、计算机、平均分信息,并打印出各科最高分。
姓名 数学 英语 计算机
Mary 93 100 88
Jone 82 90 90
Peter 91 76 71
Rose 100 80 92