程序设计训练

2026/4/24 18:14:33

滨海中等专业学校 韩立超

程序设计训练

一、

程序填空

题目:下面的程序首先随机产生20个大于或等于900且小于1000的 素数,然后将这些素数保存在数组array中,并将这些素数 在屏幕上以每行打印5个的格式输出,请将程序补充完整。 --------------------------------------------------------- 注意:请勿改动主函数main()中的其他内容 且不能使用C语言的库函数。

-------------------------------------------------------*/ #include #include #include

/*函数isPrime(int m)用于判断整数m是否为素数*/ int isPrime(int m) {

int flag=0; int i=2,k; k=(int)sqrt(m);

/***********SPACE***********/ while (i<=k && 【?】) i++; if(i>k) flag=1; return flag; }

void main() {

int array[20]; int i,t; i=0; while(i<20) {

t=rand()0+900; /***********SPACE***********/ if (【?】) {

array[i]=t; printf(\ i++;

if (!(i%5)) printf(\ } }

printf(\}

二、 程序改错

- 1 -

滨海中等专业学校 韩立超

题目:主函数main()中调用count()函数统计子串substr在字符串 str中出现的次数。例如字符串str为”abdrgabdd”,子串 substr为”ab”,则子串在该字符串出现的次数为2。 下面给定的程序存在错误,请改正。

--------------------------------------------------------- 注意:不得增行或删行,也不得更改程序的结构。

--------------------------------------------------------*/ #include

int count(char str[],char substr[]) {

/***********FOUND***********/ int i,j,k,num;

for(i=0;str[i]!='\\0';i++) {

/***********FOUND***********/

for(j=0,k=0;substr[k]==str[j];k++,j++) if(substr[k+1]=='\\0') { num++;break; } }

return(num); }

int main() {

char str[80],substr[80]; int num=0;

printf(\ gets(str);

printf(\ gets(substr);

/***********FOUND***********/ num=count(str[80],substr[80]); if(num)

printf(\ else

printf(\ return 0; }

三、程序设计

题目:主函数main()中一维数组a为测试数据,程序将测试数据进 行加密,加密后的数据存入数组b中,判断数组b中是否存 在素数,将所有素数存入数组c中,并输出。 编写程序:

1. 编写函数void encode(int x[],int n,int y[]),将数

- 2 -

滨海中等专业学校 韩立超

组x中n个不超过3位的正整数逐个做加密处理, 并将加密后的数据存入数组y中。加密方法如下:将正 整数的每一位用该位数字加该位序号的值替换(序号 规定:个位为3,十位为2,百位为1),若结果大于9, 则用该数除以10的余数替换。

2. 编写函数int CheckPrime(int y[],int n,int c[]), 判断数组y中n个整数是否是素数,并将所有素数存入数 组c中,函数返回素数个数。 例如: 测试数据:

25,90,89,24,125 运行结果:

c[0]=13 is prime c[1]=2 is prime c[2]=47 is prime

--------------------------------------------------------- 注意:请勿改动主函数main()中的任何语句。

-------------------------------------------------------*/

#include #include #include #include

void encode(int x[],int n,int y[]) {

/**********Program**********/

/********** End **********/ }

int CheckPrime(int y[],int n,int c[]) {

/**********Program**********/

/********** End **********/ }

- 3 -

滨海中等专业学校 韩立超

int main() {

int i,a[10]={25,90,89,24,125},b[10]={0},c[10]={0}; int num=0,n; FILE *fp;

if((fp=fopen(\ {

printf(\ exit(0); } n=5;

encode(a,n,b);

num=CheckPrime(b,n,c);

for(i=0;i

printf(\ fprintf(fp,\ }

fclose(fp); getch(); return 0; }

- 4 -


程序设计训练.doc 将本文的Word文档下载到电脑
搜索更多关于: 程序设计训练 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219