1、编写子函数sjx(int n )打印下列图案:图案的行数在main()中通过键盘输入。
#include<>
int sjx(int n)
int i,j;
for(i=1;i<=n;i++)
void main()
int n;
scanf("%d",&n);
sjx(n);
getch();
2、程序功能:顺序查找法。设计要求:
1) 编写函数int search(int a,int n,int x),其功能是在长度为n的数组中查找整数x是否存在,若存在函数返回x在数组中的下标位置,否则返回0值。
2) 编写函数main,定义并初始化一个数组a,接受从键盘上输入的整数x,调用函数search若找到,输出x所在的下标,否则输出“not found!”。
#include<>
int search(int a,int n,int x)
int i;
for(i=1;i if(a[i]==x) break;
if(i return i;
elsereturn 0;
void main()
int a[10]=;
int x,t;
scanf("%d",&x);
if(x==a[0]) printf("%d",0);
elsegetch();
3、程序功能:冒泡排序法。设计要求:
1) 编写函数int sort(float b,int n),其功能是将长度为n的数组按由小到大进行排列。
2) 编写函数main,定义一个数组a,从键盘上输入10个数给数组,调用函数sort对b数组排序,并输出排序后的数组。
#include<>
int sort(float b,int n)
int i,j,k;
for(i=0;i
void main()
float a[10];
int i;
for(i=0;i<10;i++)
scanf("%f",&a[i]);
sort(a,10);
for(i=0;i<10;i++)
printf("%0f ",a[i]);
getch();
4、程序功能:选择排序法。设计要求:
1) 编写函数int sort(int a,int n),其功能是将长度为n的数组按由大到小进行排列。
2) 编写函数main,定义一个数组a,从键盘上输入10个数给数组,调用函数sort对a数组排序,并输出排序后的数组。
#include<>
int sort(int a,int n)
int i,j,k,t;
for(i=0;i
void main()
int a[10];
int i;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
sort(a,10);
for(i=0;i<10;i++)
printf("%d",a[i]);
getch();
5、已知正弦值的近似的多项式计算公式为:
sin(x)=x-x3/3!+x5/5!-x7/7!+…1)nx2*n+1/(2*n+1)!+
输入x和ε,编写按上述公式计算sin(x)近似值且误差小于ε的程序。
设:x=1.57 ε=0.00001
6、通过键盘输入一个十进制整数,并转换成二进制数,所得二进制数的每一位放在一维数组中,输出此二进制数。要求:(1)编写函数dtob(int a,n)完成十进制整数转换成二进制数, 二进制数的最低位放在数组的第一个元素中。
(2)在主函数中通过键盘输入一个十进制数。
#include<>
dtob(int a,int n)
int k,r;
k=-1;do
while(n!=0);
return k;
main()
int a[10],x,i,t;
scanf("%d",&x);
t=dtob(a,x);
for(i=0;i<=t;i++)
printf(" d",a[i]);
getch();
7、用二分法求方程3x3-3x2+x-1=0在x0=2附近的实根。精确到|f(x)|<0.0001为止。要求:
1)用函数float eff(float x)求方程在x附近的根;
2)在主函数中输入x0,调用函数求得方程的近似根,并输出结果。
8.用牛顿迭代法求方程3x3-3x2+x-1=0在x0=2附近的实根。要求:
1)用函数float newtoon(float x)求方程在x附近的根;
2)用函数float f(float x)求x处的函数值,用函数float f1(float x)求f(x)在x处的导数;
3)在主函数中输入x0,调用函数求得方程的近似根(精度要求为10-5),并输出结果。
#include<>
#include<>
float f(float x)
return 3*x*x*x-3*x*x+x-1;
float f1(float x)
return 9*x*x-6*x+1;
float newtoon(float x)
float f,f1,x0;
dowhile(fabs(x-x0)>=1e-5);
return x;
void main()
float x0;
scanf("%f",&x0);
printf("the result=%.2f",newtoon(x0));
getch();
9.请设计程序,用牛顿迭代法求f(x)=cos(x)-x的近似根,要求精确到10-6。
1)用函数float newtoon(float x)求方程在x附近的根;
2)用函数float f(float x)求x处的函数值,用函数float f1(float x)求f(x)在x处的导数;
3)在主函数中输入x0,调用函数求得方程的近似根(精度要求为10-5),并输出结果。
#include<>
#include<>
float f(float x)
return cos(x)-x;
float f1(float x)
return -sin(x)-1;
float newtoon(float x)
float f,f1,x0;
dowhile(fabs(x-x0)>=1e-6);
return x;
void main()
float x0;
scanf("%f",&x0);
printf("the result=%.2f",newtoon(x0));
getch();
10.已知f(x)=lnx+x2在(1/e, 1)内有唯一的一个实根。请设计程序,用二分法求该近似实根。精确到|f(x)|<0.0001为止。
1)用函数float eff(float x)求方程在x附近的根;
2)在主函数中输入x,调用函数求得方程的近似根,并输出结果。
#include<>
#include<>
float eff(float x)
void main()
float m=1/2.7,n=1,r;
r=(m+n)/2.0;
while(r)
if(fabs(eff(r))<1e-4) break;
if(eff(r)*eff(m)<0) n=r;
else m=r;
r=(m+n)/2.0;}
printf("the result is %6.3f", r);
getch();
11、编写子函数yhsj( int a[int n )打印杨辉三角形:要求通过键盘在main()中输入打印的行数。
#include<>
void yhsj(int a[20][20],int n)
C语言上机试卷C
本试卷完成时间 90分钟 一 改错题 16分 程序功能 函数findword的功能是 在s指向的由若干个英文句子组成的字符串中搜索包含t指向子串的单词,将找到的所有包含t子串的单词复制到ch指向的二维数组中,函数返回找到的单词个数。称s字符串为 被搜索字符串 t子串为 搜索字符串 测试数据与运行结果...
C语言上机试卷C
一 改错题 16分 程序功能 对一个二维数组中的数据排序。排序规则如下 将整个数组中值最小的元素所在行调整为数组第1行 行下标为0 将除第1行外剩余行中值最小的元素所在行调整为数组第2行,将除第 行外剩余行中值最小的元素所在行调整为数组第3行,其它以此类推。测试数据与运行结果 数组初始化数据 输出 ...
C语言上机试卷
桂林电子科技大学试卷。2010 2011学年第 2 学期。课程名称 c语言程序设计适用年级 10 考试时间 60 分钟 试卷编号 001 考前准备 请在e盘根目录下建一个以自己学号命名的文件夹,试题中的所有程序所对应的工程目录都创建在学号文件夹下。第1题 改错题 30分 要求 该程序文件中有1 5个...