C语言程序填空(7)

2019-07-29 11:11

int number[10]; input(number); max_min(number); output(number); }

input(number) int number[10]; { int i;

/***********SPACE***********/ for(i=0;i<9;【?】)

scanf(\scanf(\}

/***********SPACE***********/ max_min(【?】) int array[10]; {

int *max,*min,k,l; int *p,*arr_end;

/***********SPACE***********/ arr_end=【?】; max=min=array;

for(p=array+1;p*max) max=p;

/***********SPACE***********/ else if(【?】) min=p; k=*max; l=*min;

*p=array[0];array[0]=l;l=*p; *p=array[9];array[9]=k;k=*p; return; }

output(array) int array[10]; {

int *p;

for(p=array;p

printf(\}

答案:1). i++ 或 i=i+1 或 ++i 2). array

3). array+10 或 10+array

4). *p<*min 或 *min>*p

功能:下面的程序是求1!+3!+5!+……+n!的和。 main() {

long int f,s; int i,j,n;

/***********SPACE***********/ 【?】;

scanf(\

/***********SPACE***********/ for(i=1;i<=n; 【?】) { f=1;

/***********SPACE***********/ for(j=1; 【?】;j++)

/***********SPACE***********/ 【?】; s=s+f; }

printf(\}

答案:1). s=0

2). i+=2 或 i=i+2 或 i++,i++

3). j<=i 或 i>=j 或 jj 4). f= f * j

功能:输入某年某月某日,判断这一天是这一年的第几天? main() {

int day,month,year,sum,leap;

printf(\scanf(\switch(month) {

case 1:sum=0;break; case 2:sum=31;break; case 3:sum=59;break;

/***********SPACE***********/ case 4:【?】;break; case 5:sum=120;break; case 6:sum=151;break; case 7:sum=181;break; case 8:sum=212;break;

case 9:sum=243;break; case 10:sum=273;break; case 11:sum=304;break; case 12:sum=334;break;

default:printf(\}

/***********SPACE***********/ 【?】;

/***********SPACE***********/ if(year@0==0||(【?】) leap=1; else leap=0;

/***********SPACE***********/ if(【?】) sum++;

printf(\}

答案:1). sum=90

2). sum=sum+day 或 sum= sum + day

3). year%4==0&&year0!=0) 或 year%4 == 0 && year0 != 0

4). leap==1&&month>2 或 leap == 1 && month>2 或 leap == 1 && 2

int first = 0; int last = n-1; int middle, index; index = -1;

while (first <= last) {

middle = (first + last) / 2;

/***********SPACE***********/ if (【?】) {

index = middle; break; }

/***********SPACE***********/ else if (【?】) last = middle - 1;

else

first = middle + 1; }

return index; }

#include void main(void) {

int x[] = { -1, 0, 1, 3, 5, 7, 9, 10}; int n = sizeof(x)/sizeof(int); int answer, i;

printf(\printf(\printf(\for (i = 0; i < n; i++) printf(\

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

【?】;

if (answer >= 0)

printf(\answer, answer); else

printf(\i\}

答案:1). x[middle] == middle

2). x[middle] > middle 或 middle

功能:在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1~100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值。请编写一个程序实现。#include void main() {

int score,i,max,min,sum; max=-32768; min=32767; sum=0;

for(i=1;i<=10;i++) {

printf(\

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

sum+=score;

/***********SPACE***********/ if(【?】) max=score;

/***********SPACE***********/ if(【?】) min=score; }

printf(\min score:%d\\n\

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

答案: 1). &score

2). score>max 或 maxscore

4). (sum-max-min)/8 或 (sum -max - min )/8 功能:从键盘上输入两个复数的实部与虚部,求出并输出它们的和、差、积、商。 #include void main() {

float a,b,c,d,e,f;

printf(\输入第一个复数的实部与虚部:\scanf(\

printf(\输入第二个复数的实部与虚部:\scanf(\

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

【?】; f=b+d;

printf(\相加后复数:实部:%f,虚部:%f\\n\e=a*c-b*d;

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

【?】;

printf(\相乘后复数:实部:%f,虚部:%f\\n\e=(a*c+b*d)/(c*c+d*d);

/***********SPACE***********/ 【?】;

printf(\相除后复数:实部:%f,虚部:%f\\n\}

答案:1). e=a+c 或 e=c+a

2). f=a*d+b*c 或 f= a*d + b*c 或 f= a * d + b * c

3). f=(b*c-a*d)/(c*c+d*d) 或 f=(b*c-a*d) / (c*c+d*d) 或 f=( b * c - a * d ) / ( c * c + d *

d )

功能:输入一个学生的生日(年:y0、月:m0、日:d0),并输入当前日期(年:y1、月:m1、日:d1)。求出该学生的年龄(实足年龄)。

#include main()

{int age,y0,y1,m0,m1,d0,d1; printf(\输入生日日期(年,月,日)\/***********SPACE***********/ 【?】(\printf(\输入当前日期(年,月,日)\scanf(\age=y1-y0;

/***********SPACE***********/ if(m0【?】m1)age--;

/***********SPACE***********/ if((m0【?】m1)&&(d0>d1))age--; printf(\}

答案:1). Scanf;2). >;3). ==;

功能:算式:?2*7?=3848中缺少一个十位数和一个个位数。编程求出使该算式成立时的这两个数,并输出正确的算式。 main() {

int x,y;

/***********SPACE***********/ for(x=1;【?】;x++)

/***********SPACE***********/ for(【?】;y<10;y++)

/***********SPACE***********/ if(【?】==3848) {

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

printf(\【?】); exit(0); } }

答案:1). x<10 或 10>x 或 x<=9 或 9>=x 2). y=0;3). (10*x+2)*(70+y) 或 ( 10 * x + 2 ) * ( 70 + y )

4). 10*x+2,70+y 或 10 * x + 2 , 70 + y

功能:用条件编译方法实现以下功能。输入

一行电报文字,可以任选两种方式输出,一种为原文输出;另一种将字母变成下一个字母(如a变成b,C变成D,其他字符不变)输出。

#define CHANGE main() {

/***********SPACE***********/ char str[80],【?】=str; int k;

printf(\

/***********SPACE***********/ gets【?】;

printf(\#ifdef CHANGE for(;*s!='\\0';s++) {

if(*s>='a'&&*s<='z'||*s>='A'&&*s<='Z') { (*s)++;

if(*s>'Z'&&*s<'Z'+2)

/***********SPACE***********/ 【?】; if(*s>'z')

/***********SPACE***********/ *s=【?】; } }

printf(\#else

printf(\#endif }

答案:1). *s;2). (str) 或 (s);3). *s='A' 4). 'a'

功能:从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。 #include #include void fun (long s, long *t) {

long sl=10; s /= 10;

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

*t = s 【?】 10; while(s>0) {

/***********SPACE***********/ s = 【?】;

/***********SPACE***********/ *t = s*sl【?】;

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

sl = sl 【?】10; } }

main() { long s, t; clrscr();

printf(\fun(s, &t);

printf(\}

答案:1). %;2). s/100;3). + *t;4). *

功能:将s所指字符串的正序和反序进行连接,形成一个新串放在t所指的数组中。例如:当s串为\时,则t串的内容应为\。 #include #include #include

void fun (char *s, char *t) {

int i, d;

/***********SPACE***********/ d = 【?】;

/***********SPACE***********/ for (i = 0; i

for (i = 0; i

/***********SPACE***********/ t[【?】] = s[d-1-i];

/***********SPACE***********/ t[【?】] ='\\0'; }

main() {

char s[100], t[100]; clrscr();

printf(\s);

fun(s, t);

printf(\}

答案:1). strlen(s)

2). i++ 或 i=i+1 或 i+=1 或 ++i 3). d+i 或 i+d

4). 2*d 或 d*2 或 i+d 或 d+i

功能:一个40磅重的板碎成4块,每块正好是一个整数磅,且用这4块当砝码能称出1~40磅的整数重量的物体。编程求这4块的各自重量。 main() {

int i,j,k,l,p,t1,t2,t3,t4; for(i=1;i<38;i++)

/***********SPACE***********/ for(【?】;j<38-i;j++)

/***********SPACE***********/ for(k=j;k<【?】;k++) {

l=40-i-j-k;

for(p=1;p<40;p++) {

for(t1=-1;t1<2;t1++) for(t2=-1;t2<2;t2++) for(t3=-1;t3<2;t3++) for(t4=-1;t4<2;t4++)

/***********SPACE***********/ if(【?】==p) goto next; break;

/***********SPACE***********/ next:if(p==【?】) {

printf(\exit(0); } } }

printf(\}

答案:1). j=i

2). 39-i-j 或 39 -i -j

3). i*t1+j*t2+k*t3+l*t4 或 i * t1 + j * t2 + k * t3 + l * t4;4). 39

功能:从键盘上输入一个字符串, 将该字符串升序排列后输出到文件test.txt中,然后从该文件读出字符串并显示出来。 #include #include #include main() {

FILE *fp;

char t,str[100],str1[100]; int n,i,j; if((fp=fopen(\{

printf(\exit(0); }

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

/***********SPACE***********/ for(i=0; 【?】 ;i++) for(j=0;j

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

if(【?】) {

t=str[j];

str[j]=str[j+1]; str[j+1]=t; }

/***********SPACE***********/ 【?】; fclose(fp);

fp=fopen(\fgets(str1,100,fp); printf(\fclose(fp); }

答案:1). n=strlen(str) 或 for(n=0;str[n]!='\\0';n++) 或

for(n=0;str[n];n++) 或 for(n=0;str[n]!=0;n++) 2). ii 或 i<-1+n 或 ii 或 -1+n>i 或 i<=n-1 或 n-1>=i 或 -1+n>=i 3). str[j]>str[ j + 1 ] 或 str[ j + 1 ]


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

下一篇:中国铁路总公司节能减排项目推广管理办法(铁总计统[2015]364号

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

马上注册会员

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