计算机二级C语言题库之程序填空
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机二级C语言题库之程序填空
找Armstrong(水仙花)数:371=3*3*3+7*7*7+1*1*1
#include <stdio.h>
#include<math.h>
void main()
{ int i,a,b,c;
for(i=100;i<=999;i++)
{ a=i/100;
_______1_______ // b=i%100/10;
c=i%10;
if (________2________) // a*a*a+b*b*b+c*c*c = = i
printf("%d is a Armstrong number!\n",i);
}
}
输入1个整数后,输出该数的位数。(例:输入3214则输出4,输入-23156则输出5)。#include <stdio.h>
void main()
{ int n,k=0;
scanf("%d",&n);
while( _____1_____ ){ // n!=0
k++;
_____2_____; // n=n/10
}
printf("%d\n",k);
}
求输入的整数各位数字之和,如输入234则输出9,输入-312则输出6。
#include <stdio.h>
#include <math.h>
void main()
{
int n,s=0;
scanf("%d",&n);
______ 1 ______ // if (n<0) n=-n;
while(n!=0) {
______ 2 ______ // s+=n%10;
n=n/10;
}
printf("%d\n",s);
}
调用函数f,将一个整数首尾倒置。例如:若程序输入12345,则输出54321;若程序输入-34567,则输出-76543。
#include <stdio.h>
#include <math.h>
long f(long n)
{ long m,y=0; m=fabs(n);
while(m!=0) {
y=y*10+m%10;
____1____ // m=m/10 ;
}
if(n>=0) return y;
else _____2_____ // return -y ;
}
void main()
{
printf("%ld\t",f(12345)); printf("%ld\n",f(-34567));
}
调用函数f,从字符串中删除所有的数字字符。
#include <stdio.h>
#include <string.h>
#include <ctype.h>
void f(char *s)
{ int i=0;
while(s[i]!='\0'){
if(isdigit(s[i])) ____1____(s+i,s+i+1); // strcpy
___2___ i++;} // else
}
void main()
{ char str[80];
gets(str); f(str); puts(str);
}
调用find函数在输入的字符串中查找是否出现"the"这个单词。如果查到返回出现的次数,如果未找到返回0。
#include <stdio.h>
int find(char *str)
{ char *fstr="the";
int i=0,j,n=0;
while (str[i]!='\0')
{
for(______1______) // j=0; j<3; j++
if (str[j+i]!=fstr[j]) break;
if (______2______) n++; // j>=3
i++;
}
return n;
}
void main()
{ char a[80];
gets(a);
printf("%d",find(a));
}
输入的一个小写字母,将字母循环后移5个位置后输出。例如:"a"变成"f","w"变成"b"。
#include <stdio.h>
void main()
{ char c;
c=getchar();
if(______1______) // c>='a'&&c<='u'
c=c+5;
else
if (c>='v' && c<='z')
______2______ // c=(c-'a'+5)%26+'a';
putchar(c);
}
将字符串s中所有的字符'c'删除。
#include <stdio.h>
void main()
{ char s[80];
int i,j;
gets(s);
for(i=j=0; ______1______; i++) // s[i] != '\0'
if(s[i] != 'c')
{ s[j]=s[i];
______2______ // j++;
}
s[j]='\0';
puts(s);
}