C填空题50题(4)

2019-09-01 13:28

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). m%i!=0 或 m%i>0 或 m%i 2). isPrime(t) 或 isPrime(t)!=0

第16题 (30.0分) 题号:644

/*------------------------------------------------------- 【程序填空】

---------------------------------------------------------

题目:程序首先将随机产生的12个水仙花数存放于一个3行4列的 数组array中,然后找出其中的最大数所在的行号与列号, 并将行号与列号输出在屏幕上。

说明:所谓水仙花数是指其各位数字立方和等于该数本身的数。

--------------------------------------------------------- 注意:除要求填空的位置之外,请勿改动程序中的其他内容。 且不能使用C语言的库函数

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

#include #include #include #include

int narcissus()

{

int M,N,t,sum,find=0;

while(!find) {

sum=0;

N=rand()?0+100; M=N; while(M) {

t=M;

/***********SPACE***********/ 【?】; M=M/10; }

if(N==sum) find=1; }

return N; }

int max_value(int array[][4],int rw[]) {

int i,j,max; max=array[0][0]; for(i=0;i<3;i++) for(j=0;j<4;j++) if(max

max=array[i][j]; rw[0]=i; rw[1]=j; } return max; }

void main() {

int array[3][4]; //用于存放水仙花数

int row_col_num[2]; //用于存放最大水仙数的行列号 int i,j;

srand((unsigned)time(NULL)); printf(\ for(i=0;i<3;i++)

{

for(j=0;j<4;j++) {

array[i][j]=narcissus(); printf(\ }

printf(\ }

/***********SPACE***********/ printf(\【?】);

printf(\ printf(\} 答案:

1). sum=sum+t*t*t 或 sum+=t*t*t 2). max_value(array,row_col_num)

第17题 (30.0分) 题号:645

/*------------------------------------------------------- 【程序填空】

---------------------------------------------------------

题目:以下程序将5个字符串从小到大进行排序。字符串比较的规 则为:将两个字符串自左至右逐个字符按ASCII码值大小进 行比较,直到出现不同的字符或遇到'\\0'为止。

如果全部字符相同,则认为相等;若出现不相同的字符, 则以第一个不相同字符的比较结果为准。

--------------------------------------------------------- 注意:除要求填空的位置之外,请勿改动程序中的其他内容。 且不能使用C语言的库函数进行填空。

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

#include #include #define N 5 #define MAXLEN 100

/*函数compstr(char str1[],char str2[])实现字符串str1和 字符串str2的比较,若str1等于str2,则返回0;若str1小于 str2,则返回-1;若str1大于str2,则返回1*/

int compstr(char str1[],char str2[]){

int flag=0; int i=0;

while (str1[i]&&str2[i]&&!flag) {

/***************SPACE***************/

if (【?】) flag=1; else if (str1[i]

if(!str1[i] && str2[i]) flag=-1; else if(str1[i] && !str2[i]) flag=1; return flag; }

void main(){

char ls[N][MAXLEN]={\ char t[MAXLEN]; int i, j;

for(i=0;i

/***************SPACE***************/ if(【?】>0){ strcpy(t,ls[j]); strcpy(ls[j],ls[j+1]); strcpy(ls[j+1],t); } printf(\

for(i=0; i

1). str1[i]>str2[i] 2). compstr(ls[j],ls[j+1])

第18题 (30.0分) 题号:646

/*------------------------------------------------------- 【程序填空】

---------------------------------------------------------

题目:程序实现在一个升序排列的整数数组中插入一个数,使数组 仍保持升序排列。

--------------------------------------------------------- 注意:除要求填空的位置之外,请勿改动程序中的其他内容。 且不能使用C语言的库函数进行填空。

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

#include

/*输出数组元素*/

void print_array(int a[],int n) { int i;

for(i=0;i

printf(\ printf(\}

/*在数组中插入一个元素,使其仍然有序,x为待插入的数, n为数组中原有元素的个数*/

void insert_array(int a[],int n,int x){ int i=n-1; int find=0;

while(i>=0 && !find){ if(x

/***************SPACE***************/ 【?】 i--; }

else find=1; } a[i+1]=x; }

void main(){

int a[11]={1,3,5,8,11,13,17,21,26,30},x;

printf(\ print_array(a,10);

printf(\ scanf(\ insert_array(a,10,x);

printf(\ /*调用print_array输出插入元素后的数组*/ /***************SPACE***************/


C填空题50题(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:中职计算机专业模块化教学 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

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