教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 综合文档 >

C语言程序填空(8)

来源:网络收集 时间:2026-02-26
导读: str[j+1] 4). fputs(str,fp) 或 fprintf(fp,\或 fprintf(fp,\ 功能:找出数组中最大值和此元素的下标,数组元素的值由键盘输入。 #include \void main() { int a[10],*p,*s,i; for(i=0;i /***********SPACE********

str[j+1]

4). fputs(str,fp) 或 fprintf(fp,\或 fprintf(fp,\

功能:找出数组中最大值和此元素的下标,数组元素的值由键盘输入。 #include \void main() {

int a[10],*p,*s,i; for(i=0;i<10;i++)

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

/***********SPACE***********/ for(p=a,s=a;【?】<10;p++)

/***********SPACE***********/ if(*p【?】*s) s=p;

/***********SPACE***********/ printf(\【?】,s-a); }

答案:1). a + i 或 &a[i]

2). p-a 或 -a+p;3). >;4). *s

功能:产生并输出如下形式的方阵。 1 2 2 2 2 2 1 3 1 2 2 2 1 4 3 3 1 2 1 4 4 3 3 3 1 4 4 4 3 3 1 5 1 4 4 3 1 5 5 5 1 4 1 5 5 5 5 5 1 main() {

int a[7][7]; int i,j;

for (i=0;i<7;i++) for (j=0;j<7;j++) {

/***********SPACE***********/ if (【?】) a[i][j]=1;

/***********SPACE***********/ else if (ij&&i+j<6) a[i][j]=3;

/***********SPACE***********/ else if (【?】) a[i][j]=4; else a[i][j]=5;

}

for (i=0;i<7;i++) {

for (j=0;j<7;j++) printf(\

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

答案:1). i == j || i + j == 6 2). a[i][j]=2

3). i6 或 j>i && i + j>6 或 ii && i + 6

功能:用结构体调用的方法编程。要求输入A,B,C,D,E,F五个元素的数值,并按从大到小的顺序输出。

#define N sizeof tbl/sizeof tbl[0] /*取得数组有多少个元素*/ int A,B,C,D,E,F; struct ele {

char vn;

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

int 【?】;

}tbl[]={{'A',&A},{'B',&B},{'C',&C},{'D',&D},{'E',&E},{'F',&F}},t; main() {

int k,j,m;

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

printf(\scanf(\}

m=N-1; while(m>0) {

for(k=j=0;j

/***********SPACE***********/ if(*tbl[j].vp<【?】) {

t=tbl[j];

tbl[j]=tbl[j+1]; tbl[j+1]=t; k=j; }

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

for(k=0;k

printf(\printf(\getch(); }

答案: 1). *vp 2). N

3). *tbl[j+1].vp 或 *tbl[ j + 1 ].vp 4). m=k

功能:用冒泡法对数组a 进行由小到大的排序。

void fun(int a[],int n) {

int i,j,t;

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

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

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

t=a[i]; a[i]=a[i+1]; a[i+1]=t; } }

main() {

int i,a[10]={3,7,5,1,2,8,6,4,10,9}; /***********SPACE***********/ 【?】;

for(i=0;i<10;i++) printf(\}

答案:1). j<=n-1 或 n-1>=j 或 j<=-1+n 或 -1+n>=j 或 jj 或 j

2). ii 或 ii 或 i<=n-j-2 或 i<=n-2-j

3). a[i]>a[ i + 1 ] 或 a[ i + 1 ]

功能:输出两个整数中大的那个数,两个整数由键盘输入。 #include \void main() {

int a,b,*p1,*p2;

/***********SPACE***********/ p1=【?】malloc(sizeof(int)); p2=(int*)malloc(sizeof(int));

/***********SPACE***********/ scanf(\【?】,p2); if(*p2>*p1) *p1=*p2; free(p2);

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

答案:1). (int *);2). p1;3). *p1

功能:计算并输出500以内最大的10个能被13或17整除的自然数之和。 #include #include

/***********SPACE***********/ int fun(【?】 ) {

int m=0, mc=0, j, n;

/***********SPACE***********/ while (k >= 2 && 【?】) {

/***********SPACE***********/ if (k == 0 || 【?】) {

m=m+k; mc++; } k--; }

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

main ( )

{

clrscr( );

printf(\}

答案:1). int k;2). mc < 10 或 10 > mc 或 mc <= 9 或 9 >= mc

3). k == 0 或 !(k) 或 k/17*17 == k;4). return m 或 return (m)

功能:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数? main() {

long int i; int

bonus1,bonus2,bonus4,bonus6,bonus10,bonus;

scanf(\

bonus1=100000*0.1;bonus2=bonus1+100000*0.75;

bonus4=bonus2+200000*0.5; bonus6=bonus4+200000*0.3; bonus10=bonus6+400000*0.15; if(i<=100000) bonus=i*0.1;

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

bonus=bonus1+(i-100000)*0.075; /***********SPACE***********/ else if(【?】)

bonus=bonus2+(i-200000)*0.05; /***********SPACE***********/ else if(【?】)

bonus=bonus4+(i-400000)*0.03; else if(i<=1000000)

bonus=bonus6+(i-600000)*0.015;

else

bonus=bonus10+(i-1000000)*0.01; /***********SPACE***********/ 【?】(\}

答案:1). i<=200000 或 200000>=i 2). i<=600000 或 600000>=i 3). i<=1000000 或 1000000>=i 4). printf

功能:seek()函数:判断是否有不合格成绩;形参:1个,指向由3个int型元素组成的1维数组的行指针变量返回值:(1)有不合格成绩,则返回指向本行首列的一个(列)指针; (2)没有有不合格成绩,返回值为指向下一行的一个(列)指针

int *seek( int (*pnt_row)[3] ) {

int i=0, *pnt_col;

/***********SPACE***********/ 【?】=*(pnt_row+1); for(; i<3; i++)

if(*(*pnt_row+i)<60) {

pnt_col=*pnt_row;

break; /*退出循环*/ }

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

return(【?】); }

main() {

static int

grade[3][3]={{55,65,75},{65,75,85},{75,80,90}}; int i,j,*pointer; for(i=0; i<3; i++) {

/***********SPACE***********/ pointer=seek(【?】); if(pointer==*(grade+i)) {

printf(\for(j=0; j<3; j++)

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

printf(\} } }

答案:1). pnt_col;2). pnt_col 3). grade+i 或 i+grade 4). pointer+j 或 j+pointer

功能:1982年我国第三次人口普查,结果全国人口为10.3亿,假如人口增长率为5%。编写一个程序求在公元多少年总人口翻了一番。

#include void main() {

double p1=10.3,p2,r=0.05; int n=1;

…… 此处隐藏:4452字,全部文档内容请下载后查看。喜欢就下载吧 ……
C语言程序填空(8).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/403068.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)