C语言程序填空(3)

2019-07-29 11:11

/***********SPACE***********/ *(【?】+i)=1;

/***********SPACE***********/ *(p[i]+5-(【?】))=1; }

for(i=0;i<5;i++) {

for(j=0;j<5;j++)printf(\/***********SPACE***********/ 【?】; } }

答案:1). &a[i][0];2). p[i]

3). i+1 或 1+i;4). putchar('\\n'); 功能:编程求任意给定的n个数中的奇数的连乘积,偶数的平方和以及0的个数,n通过scanf()函数输入。 main() {

int r=1,s=0,t=0,n,a,i;

printf(\for(i=1;i<=n;i++) {

printf(\

/***********SPACE***********/ scanf(\【?】);

/***********SPACE***********/ if(【?】!=0)

/***********SPACE***********/ 【?】=a; else if(a!=0)

/***********SPACE***********/ s+=【?】; else t++; }

printf(\}

答案:1). &a;2). a%2;3). r*;4). a*a 功能:以下程序的功能如(图1)。 /***********SPACE***********/ 【?】 main() {

float x,f;

scanf(\

/***********SPACE***********/ if(x<0) 【?】;

/***********SPACE***********/ else if(【?】) f=2*x+1; else

f=sin(x)+5;

/***********SPACE***********/ printf(\【?】); }

答案:1). #include \或 #include ;2). f=fabs( x + 1 )

3). x<=5 或 5>=x 或 x<6 或 6>x 或 x>=0&&x<=5 或 0<=x&&x<=5 或

x>=0&&5>=x 或 0<=x&&5>=x 或 !(x>5) 4). x,f

功能:编程求某年第n天的日期。用数组表示月天数。

-------------------------------------------------------*/ main() {

int y,m,f,n; int

a[12]={31,28,31,30,31,30,31,31,30,31,30,31}; printf(\

scanf(\

/***********SPACE***********/

f=y%4==0&&y0!=0【?】y@0==0; /***********SPACE***********/ a[1]【?】f;

if(n<1||n>365+f) {

printf(\}

/***********SPACE***********/

for(m=1;m【?】a[m-1];n-=a[m-1],m++); printf(\}

答案: 1). ||

2). += 或 =a+ 3). >

功能:一个自然数被 8 除余 1 ,所得的商被 8 除也余 1 ,再将第二次的商被8 除后余7 ,最后得到一个商为a。又知这个自然数被17除余4 ,所得的商被17除余15,最后得到一个商是a的2倍。编写程序求这个自然数。 main( ) {

int i,n,a ; i=0 ; while(1) {

if(i%8==1) { n=i/8 ; if(n%8==1) {

n=n/8 ;

/***********SPACE***********/ if(n%8==7) 【?】 ; } }

if(i==4) {

n=i/17 ;

if(n==15) n=n/17 ; }

if(2*a==n) {

printf(\

/***********SPACE***********/ 【?】 ; }

/***********SPACE***********/ 【?】; } }

答案:1). a=n/8;2). break 3). i++ 或 ++i 或 i=i+1

功能:从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符串以!结束。 #include \main()

{

FILE *fp;

char str[100],filename[10]; int i=0;

if((fp=fopen(\{

printf(\exit(0); }

printf(\gets(str);

/***********SPACE***********/ while(【?】) {

if(str[i]>='a'&&str[i]<='z')

/***********SPACE***********/ 【?】;

fputc(str[i],fp); i++; }

fclose(fp);

/***********SPACE***********/ fp=fopen(\【?】); fgets(str,strlen(str)+1,fp); printf(\fclose(fp); }

答案:1). str[i] != '!';2). str[i]=str[i]-32 或 str[i]= str[i] -32;3). \或 \或 \功能:将一个字符串中的前N个字符复制到一个字符数组中去,不许使用strcpy函数。main ( ) {

char str1[80],str2[80]; int i,n;

/***********SPACE***********/ gets(【?】); scanf(\

/***********SPACE***********/ for (i=0; 【?】 ;i++)

/***********SPACE***********/ 【?】;

/***********SPACE***********/ 【?】;

printf(\}

答案: 1). str1

2). ii 或 i<=n-1 或 n-1>=i

3). str2[i]=str1[i] 或 *(str2+i)=*(str1+i) 或 *(str2+i)=str1[i] 或 str2[i]=*(str1+i)

4). str2[n]='\\0' 或 str2[i]='\\0' 或 str2[n]=0 或 str2[i]=0 或 *(str2+n)='\\0' 或

*(str2+i)='\\0' 或 *(str+n)=0 或 *(str2+i)=0 功能:产生并输出杨辉三角的前七行。 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 main ( ) {

int a[7][7]; int i,j,k;

for (i=0;i<7;i++) {

a[i][0]=1;

/***********SPACE***********/ 【?】; }

for (i=2;i<7;i++)

/***********SPACE***********/ for (j=1;j<【?】;j++)

/***********SPACE***********/ a[i][j]= 【?】; for (i=0;i<7;i++) {

/***********SPACE***********/ for (j=0; 【?】;j++) printf(\printf(\} }

答案:1). a[i][i]=1;2). i

3). a[i-1][j]+a[i-1][j-1] 或 a[i-1][j-1]+a[i-1][j] 4). j<=i 或 i>=j 或 jj 或 j-1

或 i>j-1

功能:输出结果为: * * * * * * * * * * * * * * * * * * * * main() {

/***********SPACE***********/ static char 【?】={'*','*','*','*','*'}; int i,j,k;

char space=' '; for(i=0;i<5;i++) {

printf(\

/***********SPACE***********/ for(j=1;j<=3*i;j++)

printf(\【?】);

/***********SPACE***********/ for(k=0;k<【?】;k++) printf(\}

printf(\}

答案:1). a[5] 或 a[];2). space 或 ' ' 3). 5 或 =4

功能: 统计子字符串substr在字符串str中出现的次数。例如:若字符串为\lkaaas\,子字符串为\,则应输出2。若字符串为\,子字符串为\,则应输出3

#include

fun (char *substr,char *str) {

int i,j,k,num=0; for(i=0; str[i]; i++)

for(j=i,k=0;substr[k]==str[j];k++,j++) /***********SPACE***********/ if(substr[【?】]=='\\0') {

num++;

/***********SPACE***********/ 【?】; }

return num; }

main() {

char str[80],substr[80]; printf(\gets(str);

printf(\gets(substr);

/***********SPACE***********/ printf(\【?】); }

答案:1). k + 1;2). break;3). fun(substr,str) 功能:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。 #define nmax 50 main() {

int i,k,m,n,num[nmax],*p;

printf(\scanf(\p=num;

/***********SPACE***********/ for(i=0;【?】;i++)

/***********SPACE***********/ *(p+i)=【?】; i=0; k=0; m=0;

while(m

/***********SPACE***********/ if(【?】!=0) k++; if(k==3) {

*(p+i)=0; k=0; m++; } i++;

if(i==n) i=0; }

/***********SPACE***********/ while(【?】) p++;

printf(\}

答案:1). ii;2). i+1 或 i + 1 3). *(p+i) 或 *( p + i ) 4). *p==0 或 *p == 0

功能:计算并输出high以内最大的10个素数之和,high由主函数传给fun函数,若high的值为100,则函数的值为732。 #include #include #include int fun( int high ) {

int sum = 0, n=0, j, yes;

/***********SPACE***********/ while ((high >= 2) && (【?】)) {

yes = 1;

for (j=2; j<=high/2; j++ )

/***********SPACE***********/ if (【?】) {

yes=0; break; }

if (yes) {

sum +=high; n++; }

high--; }

/***********SPACE***********/ 【?】; }

main ( ) {

clrscr( );

printf(\}

答案:1). n<10 或 10>n 2). high%j == 0 或 !(high%j)

3). return sum 或 return (sum)

功能:将十进制数转换成十六进制数。 #include \#include \main () {

int a,i; char s[20];

printf(\scanf(\c10_16(s,a);

/***********SPACE***********/ for(【?】;i>=0;i--) printf(\printf(\}

c10_16(char p[],int b) {

int j,i=0;

/***********SPACE***********/ while (【?】) {

j=b;

if(j>=0&&j<=9)

/***********SPACE***********/ 【?】;

else p[i]=j+55; b=b/16; i++; }

/***********SPACE***********/ 【?】; }

答案:1). i=strlen(s)-1 或 i=-1+strlen(s) 2). b>0 或 0

4). p[i]='\\0' 或 p[i]=0 或 p[i]=NULL 或 *(p+i)='\\0' 或 *(p+i)=0 或 *(p+i)=NULL 功能:通过函数的递归调用计算阶乘。 long power(int n) {

long f; if(n>1)

/***********SPACE***********/ f=【?】; else f=1;

return(f); }

main() { int n; long y;

printf(\/***********SPACE***********/

scanf(\【?】); y=power(n);

/***********SPACE***********/ printf(\【?】); getch(); }

答案:

1). power(n-1)*n 或 power( n - 1 ) * n 或 n*power(n-1)

2). &n;3). power(n) 或 y 功能:三角形的面积为:

area=sqrt(s*(s-a)*(s-b)*(s-c)).其中,

s=(a+b+c)/2,a、b、c为三角形三条边的长。定义两个带参数的宏,一个用来求s,另一个用来求area。编写程序,在程序中用带参数的宏求面积area。 #include \

/***********SPACE***********/ #【?】 S(x,y,z)(x+y+z)/2

#define AREA(s,x,y,z)sqrt(s*(s-x)*(s-y)*(s-z)) main() {

float a,b,c,s,area; printf(\

/***********SPACE***********/ scanf(\【?】,&c); if(a+b>c&&b+c>a&&c+a>b) {

/***********SPACE***********/ s=【?】;

/***********SPACE***********/ area=【?】;


C语言程序填空(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

Copyright © 2019-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18

× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: