C语言题库填空题部分+部分程序设计Word格式.docx
《C语言题库填空题部分+部分程序设计Word格式.docx》由会员分享,可在线阅读,更多相关《C语言题库填空题部分+部分程序设计Word格式.docx(16页珍藏版)》请在冰豆网上搜索。
【j<
=7+i】
4.完成程序填空,将字符数组a的全部字符复制到字符数组b中(要求不用strcpy函数)。
printf("
str1:
【%s】\n"
str1);
for(i=0;
str1[i]【!
=’\0’】;
i++)str2[i]=【str1[i]】;
5.将a++或++a或a--或--a填入程序填空中,实现如图所示的输出。
(填入其他无效)
【a++】
【a--】
【--a】
6.完成程序填空,实现输入4个整数,要求按由小到大的顺序输出。
{t=a;
【a=c】;
c=t;
}
{t=b;
b=c;
【c=t】;
{【t=c】;
c=d;
d=t;
7.完成程序填空,输出所有的水仙花数。
水仙花数是一个三位数,
其个、十、百位数字三次方之和为这个数。
例如:
371=3*3*3+7*7*7+1*1*1for(num=100;
【num<
=999】;
num++)
shi=【num/10%10】
if(【num==bai*bai*bai+shi*shi*shi+ge*ge*ge】)
8.完成程序填空,实现的功能是输出如下形式的方阵:
13141516
9101112
5678
1234
for(j=4;
j>
=1;
j--){for(i=1;
i<
=4;
i++)
{x=(j-1)*4+i;
printf("
%4d"
x);
}}
9.【a=’B’】;
b='
O'
;
c='
Y'
putchar(a);
putchar(b);
putchar(c);
putchar(‘\n’);
10.完成程序填空实现输入两个数a、b,判断如果a<
b,则交换两数,否则保持两数值不变,这样可以使得a始终大于b的值。
按照先a后b的顺序输出即可。
if(【?
】)a<
b
a=b;
【?
】;
}b=tprintf("
%5.2f,%5.2f\n"
a,【?
】);
b
11.完成程序填空实现输入三个数,按代数值由大到小输出。
{t=a;
b=t;
}if(a<
c)
a=c;
】;
}c=t
if(b<
{t=b;
【?
}b=cprintf("
%5.2f,%5.2f,%5.2f\n"
a,b,c);
12.完成程序填空,实现已知三个数a,b,c,找出最大值放于max中。
if(a>
=b)【?
】;
max=aelsemax=b;
if(【?
】)max=c;
c>
max
max=%d\n"
max
13.完成程序填空,实现求s=1+3+5++99.
【i=1;
】
s=1;
while(【?
】)i<
99
{i=i+2;
【s=s+i;
】}
14.完成程序填空,用do-while结构实现s=1+3+5++99.
【sum=0;
】
i=1;
item=2*i-1;
do
{sum=sum+item;
i++;
item=【2*i-1;
】}
while(【item<
100】);
//循环结束后,请考虑item的值是多少?
1+3+5+...99=%ld\n"
sum);
15.完成程序填空,实现输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的数。
while((【c=getchar()】)!
='
\n'
){
if(c>
a'
【&
c<
=’】z’||c>
A'
Z'
)letters++;
elseif(c=='
'
)space++;
elseif(【c>
=’0’&
】=’)elseother++;
9d’igit++;
16.一个小球从100米高度自由下落,每次落地后反跳回原来高度的一半,再下落,求它在第十次下落时,共经过多少米,第十次反弹多高?
floatheight【=100】;
sum=sum+height;
while(【i<
=10】){height=【height/2】;
sum+=2*height;
i++;
17.完成程序填空,实现猴子吃桃问题。
猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾又多吃了一个。
第二天早上有将剩下的挑子吃掉一半,又多吃了一个。
后每天早上都吃了前一天剩下的一半零一个。
到第10天早上想再吃是,只剩下一个挑子了。
求第一天共摘了多少桃子?
{intday【=10】;
intm=0;
intn=1;
while(day>
1)
{m=【2*(n+1)】;
【n=m】;
day--;
18.完成程序填空,实现输出以下图案:
for(i=1;
【i<
=4】;
i++){
for(j=1;
j<
=10-i;
j++)printf("
"
);
for(j=1;
=2*i-1;
j++)printf(【"
*"
】);
printf(【”\n”】);
19.完成程序填空,实现找出1000之内的所有完数,并按如图所示格式输出其因子。
一个数如果恰好等于它的公约数之和,这个数就称为"
完数"
。
6=1+2+3。
6就是一个完数。
for(a=2;
a<
=【1000】;
a++){b=0;
i<
a;
i++)f(a%i==0)
b=【b+i】;
if(a==b){
%ditsfactorsare1"
a);
for(i=2;
i++)
if(【a%i==0】)
%d"
i);
\n"
20.完成程序填空,实现求1+1/3+1/5+...之和,直到某一项的值小于10的-6次方时停止累加。
n【=1;
while(1.0/n【>
=1e-6】){s=s+1.0/n;
【n=n+2;
】}
21.完成程序填空,输出如下数阵:
1
121
12321
1234321
123454321
for(i=1;
【i<
=5】;
i++){for(k=1;
【k<
=10-i】;
k++)printf("
【j<
=2*i-1】;
%d"
i-abs(i-j));
22.两个乒乓球队进行比赛,各出三人。
甲队为a,b,c三人,乙队为x,y,z三人。
已抽签决定比赛名单,有人向队员打听比赛的名单。
a说他不和x比,c说他不和x、z比,请完成程序填空,实现找出三队赛手的名单。
chari,j,k;
//i是a的对手,j是b的对手,k是c的对手for(i='
x'
z'
for(j='
j++)
{if(【i!
=j】)//a和b不能是同一个对手
【for】
(k='
k<
k++)
{if(i!
=k&
j!
=k)//a、b、c不能是同一个对手
{if(i!
&
k!
【k!
=’】z’)
a-----%c\nb-----%c\nc-----%c\n"
i,j,k);
23.完成程序填空,实现打印下列的图形
123456789
23456789
3456789
456789
56789
6789
789
89
9
=9】;
{for(j=i;
=9;
【j++】)printf("
%2d"
【j);
24.在数组a中,存放着10个整型数据,数据是从下标0开始存放的,完成程序填空,实现顺序输出下标为奇数的各数组元素的值。
inti,a[10]={0,1,2,3,4,5,6,7,8,9【}】};
【i=i+2】)printf("
%d"
【a[i]】);
25.完成程序填空,实现用冒泡排序法对从键盘输入的10个整型数据进行由小到大排序。
scanf("
【&
a[i]】);
for(j=0;
9;
for(i=0;
9-j;
i++)if(a[i]>
a[i+1])
{t=a[i];
a[i]=a[i+1];
【a[i+1]=t;
】printf("
thesortednumbers:
10;
26.完成程序填空,实现输出所有的水仙花数,所谓水仙花数是一个3位数,其各位数字的立方和等于该数本身。
例如153=13+53+33,故153是一个水仙花数。
for(n=100;
【n<
1000】;
n++)
{a=n/100;
b=n/10-a*10;
c=n%10;
if(【a*a*a+b*b*b+c*c*c==n】)
{m[k]=n;
【k++;
】}
27.有一个已排好的数组,完成程序填空,实现要求输入一个数后,按原来排序的规律将它插入到数组中。
while(find【==0】&
left<
=right)a[i+1]=【a[i]】;
for(i=N-1;
i>
=left;
【i--】)
28.在字符数组str1[81]和str2[81]中分别存放着2个字符串,完成程序填空,实现将两个字符串连接起来构成一个新的字符串,并将新生成的字符串存放在字符数组str1[81]中(要求不用strcat函数)。
【gets】
(str1);
=’\0’】;
str2[j]!
\0'
j++,【i++】)
29.完成程序填空,进行两个字符串str1和str2的比较,若str1>str2,输出一个正数;
若str1=str2,输出0;
若str1<str2,输出一个负数,
输出的数是两个字符的Ascii码值