C语言程序填空(2)

2019-07-29 11:11

/***********SPACE***********/ putchar(n+【?】); }

main() {

int number;

printf(\scanf(\printf(\if(number<0) {

putchar('-');

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

convert(number); }

答案:1). i=n/10;2). '0' 3). number=-number

功能:输出100到1000之间的各位数字之和能被15整除的所有数,输出时每10个一行。 main() {

int m,n,k,i=0;

for(m=100;m<=1000;m++) {

/***********SPACE***********/ 【?】; n=m; do {

/***********SPACE***********/ k=k+【?】 ; n=n/10; }

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

if (k==0) {

printf(\

/***********SPACE***********/ if(i==0) 【?】; }

} }

答案:1). k=0;2). n 或 n-n/10*10 或 n-10*(n/10);3). while(n>0)或 while(n!=0);4). printf(\

功能:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。 main() {

char i,j,k;/*i是a的对手,j是b的对手,k是c的对手*/ for(i='x';i<='z';i++) for(j='x';j<='z';j++) {

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

/***********SPACE***********/ for(k='x';【?】;k++) {

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

/***********SPACE***********/ if(i!='x'&&k!=【?】)

printf(\} } } }

答案:1). i!=j 或 i != j;2). k<='z' 或 'z'>=k 3). i!=k&&j!=k 或 i != k && j != k;4). 'z' 功能:已知一个数列,它的头两项分别是0和1,从第三项开始以后的每项都是其前两项之和。编程打印此数,直到某项的值超过200为止。 main() {

int i,f1=0,f2=1;

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

printf(\

/***********SPACE***********/ if(f1>【?】) break; printf(\if(f2>200) break;

if(i%2==0) printf(\f1+=f2;

/***********SPACE***********/ f2+=【?】; }

printf(\}

答案:1). i=1;2). 200;3). f1

功能:删除字符串中的数字字符。

例如:输入字符串:48CTYP9E6,则输出:CTYPE。

#include

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

char *p=s; while(*p)

if((*p>='0')&&(*p<='9')) p++;

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

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

main( ) {

char item[100] ;

printf(\gets(item); fun(item);

printf(\}

答案:1). char *s 或 char s[];2). *p++ 3). *s='\\0' 或 *s=0

功能:已知X、Y、Z分别表示0~9中不同的数字,编程求出使算式

XXXX+YYYY+ZZZZ=YXXXZ成立时X、Y、Z的值,并要求打印该算式。 main() {

int x,y,z;

/***********SPACE***********/ for(x=0;【?】;x++) for(y=0;y<10;y++) {

if(y==x) continue; for(z=0;z<10;z++) {

/***********SPACE***********/ if(z==x【?】z==y) continue;

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

if(1111*(x+y+z)==【?】+1110*x+z) {

printf(\/***********SPACE***********/

printf(\11*z,【?】); exit(0); } } } }

答案:

1). x<10 或 10>x ;2). || 3). 10000*y 或 y*10000

4). 10000*y+1110*x+z 或 10000 * y + 1110 * x + z 功能:计算个人与各科平均成绩及全班平均成绩,并在屏幕上显示出来。

#define M 5 /*定义符号常量 人数为5*/ #define N 4 /*定义符号常量 课程为4*/ #include \main() { int i,j;

void aver(float sco[M+1][N+1]);

static float score[M+1][N+1]={{78,85,83,65}, {88,91,89,93},

{72,65,54,75},{86,88,75,60},{69,60,50,72}}; aver(score); clrscr();

printf(\学生编号 课程1 课程2 课程3 课程4 个人平均\\n\for(i=0;i

printf(\学生%d\\t\

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

printf(\printf(\}

for(j=0;j<8*(N+2);j++) printf(\

printf(\课程平均\for(j=0;j

printf(\printf(\getch(); }

void aver(float sco[][N+1]) { int i,j;

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

for(j=0;j

sco[i][N] += sco[i][j]; sco[M][j] += sco[i][j]; sco[M][N] += sco[i][j]; }

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

sco[i][N] 【?】 N; }

for(j=0;j

/***********SPACE***********/ sco[M][【?】] /= M;

sco[M][N]=sco[M][N]/M/N; }

答案:1). N+1 或 1+N 或 5;2). M 或 5 3). /=; 4). j

功能:有一组基数值(正整数),输入一个正整数(小于100),问:如果该数由基数值相加构成(每个基数可以重复使用),那么最少可能利用的基数是多少个。 #include #include #define MAXSIZE 100

#define min(a,b) ((a) <= (b) ? (a) : (b))

void main(void) {

int num[MAXSIZE+1]; int base[] = { 1, 3, 4 };

int k= sizeof(base)/sizeof(int); int n;

int i, j, MIN; char line[100];

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

printf(\gets(line); n = atoi(line); num[0] = 0; num[1] = 1;

for (i = 2; i <= n; i++) {

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

for (j = 0; j < k; j++) if (i >= base[j])

MIN = min(num[i-base[j]]+1, MIN); /***********SPACE***********/ 【?】; }

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

答案:1). MIN = n;

2). num[i] = MIN;3). num[n]

功能:输入两个整数,求他们的按位与。 #include void main() {

int x,y,z=0,a,b,k=1; scanf(\while(x>0&&y>0) {

a=x%2;

/***********SPACE***********/ x=【?】; b=y%2;

y=y/2;

/***********SPACE***********/ z=z+【?】; k=k*2; }

/***********SPACE***********/ 【?】(\}

答案:1). x/2;2). a*b*k 或 a * b * k 3). printf

功能:从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符串以!结束。#include \#include main() {

FILE *fp;

char str[100]; int i=0;

/***********SPACE***********/ if((fp=fopen(\【?】))==NULL) {

printf(\exit(0); }

printf(\/***********SPACE***********/ gets(【?】); while(str[i]!='!')

/***********SPACE***********/ {

if(str[i]>='a'&&【?】) str[i]=str[i]-32; fputc(str[i],fp); i++; }

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

fp=fopen(\fgets(str,strlen(str)+1,fp); printf(\fclose(fp); }

答案:1). \;2). str;3). str[i]<='z' 或 'z'>=str[i];4). fp

功能:十个小孩围成一圈分糖果,老师分给第一个小孩 10 块,第二个小孩 2 块,第三个小孩 8 块,第四个小孩 22 块,第五个小孩16 块,第六个小孩 4块,第七个小孩 10 块,第八个小孩6 块,第九个小孩 14 块,第十个小孩20 块。然后所有的小孩同时将自己手中的糖分一半给左边的小孩;糖块数为奇数的人可向老师要一块。问经过这样几次调整后大家手中的糖的块数都一样?每人各有多少块糖? main() { int

i,count=0,a[11]={0,10,2,8,22,16,4,10,6,14,20} ; /***********SPACE***********/ while(【?】) {

for(i=1 ; i<=10 ; i++) a[i-1]=a[i-1]/2+a[i]/2 ; a[10]=a[10]/2+a[0] ; for(i=1 ; i<=10 ; i++)

/***********SPACE***********/ if(【?】) a[i]++ ; for(i=1 ; i<10 ; i++)

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

if(a[i]!=a[i+1]) 【?】; if(i==10) break ; else {

a[0]=0 ; count++ ; } }

printf(\}

答案:1). 1;2). a[i]%2 == 1;3). break

功能:从读入的整数数据中,统计大于零的整数个数和小于零的整数个数。用输入零来结束输入,程序中用变量i统计大于零的整数个数,用变量j统计小于零的整数个数。 #include

main() {

int k,n,i,j;

printf(\i=j=0;

scanf(\while(n!=0) {

/***********SPACE***********/ if(n>0)i=【?】;

/***********SPACE***********/ if(n<0)j=【?】;

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

printf(\}

答案: 1). i + 1 2). j + 1 3). &n 功能:下面create函数的功能是建立一个带头结点的单向链表,新产生的结点总是插入在链表的末尾。输入0代表结束,单向链表的头指针作为函数值返回。 #include

#define LEN sizeof(struct student) struct student {

long num;

struct student *next; };

struct student *creat() {

struct student *head=NULL,*tail; long num; int a;

/***********SPACE***********/ tail=(【?】)malloc(LEN); printf(\do {

scanf(\

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

/***********SPACE***********/ if(【?】) head=tail; else

tail=tail->next; tail->num=num;

tail->next=(struct list *)malloc(LEN); } else

tail->next=NULL; }while(num!=0); return(head) ; }

main() {

struct student *p; p=creat();

printf(\while(p) {

printf(\p=p->next; } }

答案:1). struct student *

2). num!=0 或 0!=num;3). head == NULL 功能:建立一个如下的二维数组,并按以下格式输出。 1 0 0 0 1 0 1 0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 0 0 1

#include \void main() {

int a[5][5]={0},*p[5],i,j; for(i=0;i<5;i++)

/***********SPACE***********/ p[i]=【?】; for(i=0;i<5;i++) {


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

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

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

马上注册会员

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