编程填空.docx
- 文档编号:7843556
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:9
- 大小:20.23KB
编程填空.docx
《编程填空.docx》由会员分享,可在线阅读,更多相关《编程填空.docx(9页珍藏版)》请在冰豆网上搜索。
编程填空
11、以下程序的功能是:
输入圆的半径r和运算标志,按照运算标志进行运算,输出运算后的结果。
'A'或'a' 求面积
'B'或'b' 求周长
其他值 求周长和面积
#include
#define P 3.14
main()
{char c;
float r,area,length;
scanf("%c,%f",&c,&r);
Switch()
{case 'a':
case 'A':
area=P*r*r;printf("area=%f",area);break;
case 'b':
case 'B':
length=2*P*r;
printf("length=%f",length);
();
default:
area=P*r*r;
length=2*P*r;
printf("area=%d,length=%f",area,length);
}
}
12、用迭代法求某正数a的平方根。
已知迭代公式为:
x1=1/2*(x0+a/x0),迭代截止到最后两项的绝对值之差小于0.00001
#include
main()
{float a,x0,x1;
printf("\nInput a:
");
scanf("%f",&a);
if(a<0)
printf("error!
\n");
else
{x0=a/2;
x1=();
do
{x0=();}x1=(x0+a/x0)/2;}
while();
printf("sqrt(%f)=%f\n",a,x1);
}
}
11、输出下列图形。
1 2 3 4 5 6 7 8 9 main()
2 3 4 5 6 7 8 9 {int i,j;
3 4 5 6 7 8 9 for(i=1;i<=();i++)
4 5 6 7 8 9 {for(j=();j<=9;j++)
5 6 7 8 9 printf("%2d",j);
6 7 8 9 printf("\n");}
7 8 9 }
8 9
9
12、以下程序用枚举法求百鸡问题。
公鸡五元一只,母鸡三元一只,小鸡一元三只;一百元要买一百只鸡,且需包含公鸡,母鸡和小鸡,求可有哪几种方案。
请填空,要求以较高效率和合理的数值填入循环终值。
main()
{ int n,i,j,k;
n=0;
for (i=1;();i++)
for(j=1;();j++)
{ k=100-i-j;
if( () ==100)
{ n++;
printf("n=%d,cock=%d,hen=%d,chick=%d\n",n,i,j,k);
}
}
}
11、求两个数的最大值
main()
{int a,b,c;
scanf("%d,%d",&a,&b);
c=_________;
printf("max=%d",c);
}
int max(int x,int y)
{int z;
if (___________)z=x;
else z=y;
return (z);
}
12、 -1 x<0
y= { 0 x=0
+1 x>0
main()
{int x,y;
scanf("%d",____________);
if(x<0)y=-1;
else if(___________)y=0;
else _________;
printf("x=%d,y=%d",x,y);
}
12、编写函数sum(int n)用以求∑f(x)(x从0到n).和数作为函数的返回值,f(x)=x*x+1
int sum(int n);
int f(int x);
main()
{int a,b;
printf("Enter a integer number:
");
scanf("%d",&a);
b=________;
printf("a=%d sum=%d\n",a,b);
}
sum(int n)
{int x,s=0;
for(x=0;x<=n;x++) _____________;
return s;
}
f(int x)
{return ______________;}
11、反向输出一个整数,如:
输入-1234,输出-4321
#include
void main()
{ void printn(int x);
int n;
printf("Input n=");
scanf("%d",&n);
if (n<0)
{n=-n;putchar('-');}
____________;
}
void printn(int x)
{if (x>=0&&x<=9)
printf("%d",x);
else
{printf("%d",___________);
printn(x/10);
}
}
12、写一个函数,求一个字符串的长度。
length(p)
char *p;
{int n;
n=0;
while(___________)
{_____________;
p++;}_____________;
}
11、下面的C代码段用于计算 s=x+x3(x的3次方)/3+x5(x的5次方)/5+x7/7+x9/9+…的近似值,最后一项的绝对值小于0.000001。
#include
float fun(float x)
{int i=1;float t,s;
t=x;s=t;
while (t>1e-6){
i=__________;
t=t*_________;
s+=t;
}
return s;
}
12、 打印图形*****
***
*
main()
{int i,j,k;
for(i=0;i<=2;i++)
{for(j=0;j<=_________;j++)
printf(" ");
for(k=0;k<=________;k++)
printf("*");
printf();}
}
11、函数pi的功能是根据以下近似公式求π值:
(π*π)/6=1+1/(2*2)+1/(3*3)+..+1/(n*n)
现在请你在下面的函数中填空,完成求π的功能。
#include
double pi(long n)
{ double s=0.0; long i;
for(i=1;i<=________;i++)s=s+___________;
return(sqrt(6*s));
}
12、求s=a+aa+aaa+aaaa+...
#include
______ fun(int a,int n)
{int j;
long s=0,t=0;
for(j=1;j<=n;j++)
{t=__________;
s=s+t;}
__________;
}
12、读入n(n<=10)个整数并放入一个数组r中,再读入一个整数x,统计并输出x在数组r中出现的次数count,如果count>0,再输出x在r中所对应的最小下标(下标从0开始)。
#include"stdio.h"
void main()
{ int x,k,sub,count,n,r[10];
scanf("%d",&n);
for(k=0;k scanf("%d",_____); scanf("%d",&x); sub=count=0; for(k=0;k if(__________)count++; for(k=0;k if(x==r[k]) { sub=k;__________;} printf("count=%d\n",count); if(count>0) printf("subscript is %d\n",sub); 11、以下MIN函数的功能是: 查找带有头节点的单项链表中,节点数据域的最小值作为函数值返回 struct node {int data; struct node *next; }; int MIN(struct node *first) {struct node *p; int m; p=first->next; m=p->data; for(p=p->next;p! ='\0';p=_________) if (__________)m=p->data; return m; } 12、输入一个double型的数,使该数保留小数点后两位,对第三位小数进行四舍五入后处理,然后输出此数 main() {double x; printf("Enter x: "); scanf("__________",&x); printf(" (1)x=%f\n",x); x=x*100; x=______________; x=(int)x; x=____________; printf(" (2)x=%f\n",x); } 11、下面程序的功能是求1到1000之间能同时被3,5,7整除的数,按每行十个数的格式输出 #include main() {int i=1,j=0; for (i=1;i<1000;i++) {if (________){printf("%4d",i);j=j+1;} if (j==10){printf( );j=0;} } } 12、猴子吃桃问题。 猴子第一天摘下若干桃子,当即吃了一半,又多吃了一个。 第二天又吃了剩下的一半零一个。 以后每天都吃了前一天剩下的一半零一个。 到第10天再看,只剩下一个桃子。 求第一天共摘多少桃子 main() {int day,x1,x2; day=9; x2=1; while(day>0) {x1=___________; x2=x1; _______; } printf("%d",_________); } 11、现有已知长度n为的整数数组a,其前n-1个元素中有数据,并且数据按从小到大的顺序排列,函数insert要完成的功能是: 把任意整数i填入数组中,并使插入数据后的数组依然保持从小到大的顺序 insert(int i,int n,int a[]) {int k; k=n-1; while((k>0)&&_________) {a[k]=a[k-1]; k=k-1; } a[k]=__________; } 12、Fibonacci数列的前几项是: 1,1,2,3,5,8......编程输出该数列的前13项。 每行输出5个数 #include #define N 13 main() {int i,f1,f2,f3,n; f1=1;f2=1; printf("\n%d %d ",f1,f2); n=2; for(i=1;i<=_________;i++) {if(__________)printf("\n"); f3=f1+f2; printf("%d ",f3);n++; __________;f2=f3; } } 12、以下程序的功能是计算s=∑k! (k从0到n) long f(int n) {int i;long s; s=___________; for(i=1;i<=n;i++)s=__________; return s; } main() {long s;int k,n; scanf("%d",&n); s=0; for(k=0;k<=n;k++) s=s+___________; printf("%ld\n",s); } 11、输入一个字符。 判别它是否小写字母,如果是,将其转换为大写,否则不转换。 然后输出最后得到的字符。 main() { _________ ch; scanf("%c",&ch); ch = (ch >= 'a' && ch <= 'z')? (ch-32): __________; printf("%c",ch); } 12、编写一个程序,打印学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num、name、score[3](三门课的成绩) #define N 5 struct student {char num[6]; char name[8]; int score[4]; }__________; main() {int i,j; for(i=0;i {scanf("%s%s",________); for(j=0;j<3;j++) scanf("%d",_________); } for(i=0;i {printf("%8s%10s",stu[i].num,stu[i].name); for(j=0;j<3;j++) printf("%7d",stu[i].score[j]); printf("\n"); } } 11、以下程序的功能是: 从键盘输入一年份数据,判断此年份是否为闰年。 其中判断闰年的条件是: 能被4整除但不能被100整除,或能被400整除。 #include main() {int x,y,i; scanf("%d",&x); if (x%400==0)i=1; else if _________ i=1; else ___________; if (i==1) printf("This year is a leap year"); if (i==0) printf ("This year is not a leap year"); } 11、函数fun的功能是: 使一个字符串按逆序存放 void fun (char str[]) {char m;int i,j; for(i=0,j=strlen(str);__________;i++,j--) {m=str[i]; str[i]= ___________; str[j-1]=m; } printf("%s\n",str); } 12、函数 xtoi 的功能是将放在字符串中的十六进制数(可以出现'0'~'9'、'a'~'f)转换成十进制整数。 例如: 调用 xtoi("1f") 将返回31。 xtoi(________) { int k, d=0; for(k=0; s[k] ==' '||s[k] == '\t'; k++); while(s[k] >= '0' && s[k] <= '9' || s[k] >='a' && s[k] <= 'f' ){ if (s[k] >= '0' && s[k] <= '9') d = d * 16 + s[k] - __________; if (s[k] >= 'a' && s[k] <= 'f') d = d * 16 + s[k] - _____________; k++; } return d; } 11、验证哥德巴赫猜想: 任何一个大于6的偶数均可表示为两个素数之和。 要求将6~100之间的偶数都表示成两个素数之和。 素数指只能被1和自身整除的正整数,1不是素数2是素数。 #include int prime(int n) {int k; for (k=2; k<=n/2; k++) if (n%k==0) return 0; return ___________; } void main() {int i, k; for (i=6; i<=100; i+=2) for (k=2; k<=i/2; k++) if (___________) { printf("%d = %d + %d\n", i, k, i-k); break; } } 12、先从键盘上输入一个3行3列矩阵的各个元素的值,然后输出对角线元素之和 #include int fun() {int a[3][3],sum; int i,j; sum=__________; for(i=0;i<3;i++) {for(j=0;j<3;j++) scanf("%d",___________); } for(i=0;i<3;i++) sum=sum+__________; printf("sum=%d\n",sum);} main() {fun();}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编程 填空