1、例如:a变成f,wb。 char c; c=getchar(); if(_1_) / ca&cv & c#define f(x) x*x-5*x+sin(x) int x; float max; _1_ / max=f(1); for(x=2;xmax) max=f(x);%fn,max);(6) 输入三个整数,按由小到大的顺序输出这三个数。void swap(_1_) / int *pa, int *pb /*交换两个数的位置*/ int temp; temp = *pa; *pa = *pb; *pb = temp; int a,b,c,temp; scanf(%d%d%d,&a,&b,&
2、c); if(ab) swap(&b); if(bc) if(_2_) / if ( ab )%d,%d,%d,a,b,c);(7) 调用函数f,去除数组中的负数,输入数组x7,输出结果为:1 3 4 6 / 数组元素的删除void f(int *a,int *m) int i, j ; for(i=0;i*m;i+) if(ai0) for(j=i-;j*m-1;j+) aj=aj+1; _1_; / *m = *m-1; int i,n=7,x7=1,-2,3,4,-5,6,-7; _2_; / f (x, &n) ;n;i+) printf(%5d,xi);n);(8) 调用函数f计算代
3、数多项式1.1+2.2*x+3.3*x*x+4.4*x*x*x+5.5*x*x*x*x当x=1.7时的值。float f(float, float*, int); float b5=1.1, 2.2, 3.3, 4.4, 5.5 ;, f(1.7,b,5) );float f( _1_ ) / float x, float *a, int n float y=a0, t=1; int i; for(i=1; i tolower(ai)0 ai9 n1+; n2+;%dn,ni);(10) 将输入的十进制整数n通过函数DtoH函数转换为十六进制数,并将转换结果以字符串形式输出。(例如:输入十进制
4、数79,将输出十六进制4f。# include char trans(int x)if(xmath+pst-english+pst-computer pst-average = sum/3; int i; struct STUDENT st4=Jessica,98,95,90,Mike,80,80,90, Linda,87,76,70,Peter,90,100,99;4; GetAverage(_2_); / st + iNametMathtEnglishtComputAveragen printf(%st%dt%dt%dt%dn,sti.name,sti.math,sti.english,
5、puter,sti.average);(14) 输入m、n(要求输入数均大于0)。输出它们的最大公约数。#include int m, n, k;while ( scanf(%d%d, &m, &n), _1_ ); / m=0|nn?n:m, k);(15) 求出a中各相邻两个元素的和,并将这些和存放在数组b中,按每行3个元素的形式输出。b1=a0+a1,b9=a8+a9。 int a10,b10,i;nInput 10 numbers: for (i=0;10;i+) /* 数组输入 */ai); for (i=1; bi=_1_; /* 计算b数组中的元素 */ / ai-1+ai%3d
6、,bi); if (_2_) printf( /* 每行打印3个数据 */ / i%3= =0(16) 输入整数n(n0),求m使得2的m次方小于或等于n,2的m+1次方大于或等于n。 int m=0,t=1,n; while( _ 1 _); / scanf(“%d”,&n), n=0 / 逗号表达式 while(!(t=n) _ 2 _ / t=t*2; m+; printf(“%dn”,m);二、程序改错(1) 输入一个字符串,将组成字符串的所有非英文字母的字符删除后输出。 char str256; int i,j,k=0,n; n=strlen(str); /*1*/ if (tolo
7、wer(stri) / if (tolower(stri) tolower(stri)max) max=x; if(xmin) min=x;%f,%fn,max,min);(4) 用选择法对10个整数按升序排序。#define N 10 int i, j, min, temp ; int aN=5, 4, 3, 2, 1, 9, 8, 7, 6, 0 ;nThe array is: /* 输出数组元素 */N;,ai);N-1;i+) /* 排序操作 */ min = i; for (j=i+1; j+) /* 1 */ if (aminaj ) min =j; /* 2 */ temp=am
8、in; amin=aj; aj=temp; /*数据交换*/ / 改成 temp=amin; amin=ai; ai=temp;nThe sorted numbers: n /* 输出排序结果 */(5) 输入x和正数eps,计算多项式1-x+x*x/2-x*x*x/3!+的和直到末项的绝对值小于eps为止。 float x,eps,s=1,t=1,i=1;%f%fx,&eps); do /* 1 */ t=-t*x/+i; / t=-t*x/i+ ; s+=t; /* 2 */ while(fabs(t)=eps);(6) 运行时若输入a、n分别为3、6,则输出下列表达式的值:3+33+33
9、3+3333+33333+333333。 int i,a,n; long t=0; /* 1 */ s=0; / long s=0;=n;i+) /* 2 */ t=t*10+i; / t=t*10+1; s=s+t; s=s*a;(7) 用递归法将一个六位整数n转换称字符串。输入123456,应输出字符串123456void itoa(long i,char *s) if(i=0) return; *s = 1+i%10; / *s=i%10+ itoa(i/10,s-1); long n; char str7=%ld itoa(n,str+6); / itoa(n,str+5);(8) 输
10、入n,再输入n个点的平面坐标,然后输出那些距离坐标原点不超过5的点的坐标值。stdlib.h int i,n; struct axy float x,y; a; / struct axy float x,y; *a; a=(float*) malloc(n*2*sizeof(float);,ai.x,ai.y); / scanf(ai.x,&ai.y); if(sqrt(ai.x*ai.x+ai.y*ai.y)1) if(n%i=0) %dt,i); n/=i; /* 2 */ n+; / i+;三、编写程序(1) 在正整数中找出1个最小的、被3、5、7、9除余数分别为1、3、5、7的数,将该
11、数以格式写入到考生文件夹中Paper子文件夹下的新建文件Design1.dat中。 /*考生在这里添加代码*/ FILE *p; p=fopen(Design1.dat, for( i=1; ; if (i%3=1 & i%5=3 & i%7=5 & i%9=7) break; fprintf(p, fclose(p);(2) 若a、b为1对亲密数,则a的因子和等于b、b的因子和等于a、且a不等于b。如:220、284是1对亲密数,284、220也是1对亲密数。在65000内找出所有的亲密数对,并将每对亲密数用语句fprintf( p, %6d, %6dn, a, b)写入到考生文件夹中Pap
12、er子文件夹下的新建文件Design2.dat。 FILE *p; int a,b,c,k;design.dat /*考生在这里添加代码*/ for(k=6;k=5000;k+) b=0; c=0; for(a=1;ak;a+) if (k%a=0) b+=a;b; if (b%a=0) c+=a; if (k=c&k!=b) fprintf(p,%6d,%dn,k,b);(3) 设计程序:计算字符串s中每个字符的权重值,所谓权重值就是字符在字符串中的位置值与该字符的ASCII码值的乘积。位置值从1开始依此递增。将每个字符的权重值,以格式%d 写入到源程序目录中Paper子目录下的新建文件design.dat中。 int i,w; char *s=we45*&y3r
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1