C语言程序设计第五版谭浩强著 第六章部分课后习题答案

#include
main()
{
	int i,j,prime[101];
	for(i=2;i<=100;i++)
	prime[i]=1;
	for(i=2;i*i<=100;i++)
	{
         if(prime[i]==1)
         {
         	for(j=2*i;j<=100;j++)
         	{
	         	if(j%i==0)
	         	prime[j]=0;
	         }
         }
	}
	for(i=2;i<100;i++)
	if(prime[i]==1)
	printf("%3d ",i);
	printf("\n");
	return 0;
}
#include
main()
{
	int i,j,temp,a[11],min;
	for(i=0;i<10;i++)
	scanf("%d",&a[i]);
	for(i=0;i<=9;i++)
     {  min=i;
        for(j=i+1;j<10;j++)
        if(a[min]>a[j])min=j;
        temp=a[i];
        a[i]=a[min];
        a[min]=temp;
     }
	for(i=0;i<10;i++)
	printf("%d ",a[i]);
	printf("\n");
	return 0;
}
#include

int main()
{
	int a[3][3],sum=0;
	for(int i=0;i<3;i++)
	    for(int j=0;j<3;j++)
	    scanf("%d",&a[i][j]);
	for(int i=0;i<3;i++)
	sum+=a[i][i];
	printf("%d\n",sum);
}
#include
main()
{
    int a[10]={-23,0,2,23,67,80,99,234,790,999};
    int num,i,t;
    scanf("%d",&num);
    for(i=0;i<10;i++)
    {
        if(num<a[i]) 
        {
        t=a[i];
        a[i]=num;
        num=t; 
        }
        printf("%d ",a[i]);
    }
        printf("%d ",num);
        return 0;
}
#include

int main()
{
	int a[5]={8,6,5,4,1},t;
	for(int i=0;i<3;i++)
	{
		t=a[i];
		a[i]=a[4-i];
		a[4-i]=t;
	}
	for(int i=0;i<5;i++)
	printf("%d ",a[i]);
}
#include
main()
{
	int a[10][10]={0},i,j;
	for(i=0;i<=10;i++)
	a[i][0]=1;
    for(i=1;i<10;i++)
    for(j=1;j<=i;j++)
    a[i][j]=a[i-1][j-1]+a[i-1][j];
    for(i=0;i<10;i++)
      { 
         for(j=0;j<i;j++)
         printf("%3d ",a[i][j]);
         printf("%3d",a[i][i]);
         printf("\n");
      }
	return 0;
}
#include
main()
{
	int i,j,k,a[5][5],max,j_,count;
	for(i=0;i<4;i++)
	 {for(j=0;j<4;j++)
	  {scanf("%d",&a[i][j]);}}
    printf("\n你的二维数组是这样的:\n");
  	for(i=0;i<4;i++)
  	{
	  	for(j=0;j<4;j++)
	  	printf("%5d ",a[i][j]);
	  	printf("\n");
	  }
    for(i=0;i<4;i++)
    {
    	max=a[i][0];
    	j_=0;
    	for(j=0;j<4;j++)
    	{
	    	if(a[i][j]>max)
	    	{
	    		max=a[i][j];
	    		j_=j;
	    	}
	    }
	    count=1;
	    for(k=0;k<4;k++)
	    {
    		if(a[k][j_]<max)
    		{
		    	count=0;
		    	continue;
		    }
    	}
    	if(count)
    	{
	    	printf("鞍点是 a[%d][%d] = %d\n",i,j_,max);
	    	break;
	    }
	    
    }
    if(!count) 
	    printf("没有鞍点\n");
	    return 0;
    
}
#include
main()
{
	int a[16]={39,37,33,30,29,27,25,23,21,19,17,15,13,10,8},L,R,num,mid,i;
	L=0;
	R=14;
	mid=7;
    scanf("%d",&num);
    while(L<=R)
    {
    	if(a[mid]==num) break;
    	if(a[mid]<num) R=mid;
    	else L=mid;
    	mid=(L+R)/2;
	}
	if(a[mid]==num) printf("¸ÃÊýÊǵÚ%d¸öÊý\n",mid+1);
	return 0;
}

#include
#include
main()
{
	char a[3][81];
	int i,cw=0,w=0,n=0,s=0,q=0,j;
	for(i=0;i<3;i++)
	{
		gets(a[i]);
		for(j=0;j<80&&a[i][j]!='\0';j++)
		{
            if(a[i][j]>='A'&&a[i][j]<='Z') cw++;
            else if(a[i][j]>='a'&&a[i][j]<='z') w++;
            else if(a[i][j]>='0'&&a[i][j]<='9') n++;
            else if(a[i][j]==' ') s++;
            else q++;   
		}
	}
	printf("大写字母%d个 小写字母%d个 数字%d个 空格%d个 其他字符%d个\n",cw,w,n,s,q);
	return 0;
}
#include
#include
main()
{
	char a[]={"*****"},i,j;
	for(i=1;i<=5;i++)
	{
		puts(a);
	 for(j=1;j<=i;j++)
     printf("%c",32);
	}
	return 0;
}
#include
#include
main()
{
	char a[9999],b[9999],i,j;
	gets(a);
	for(i=0;a[i]!='\0';i++)
	{
		if(a[i]>='A'&&a[i]<='Z')
		b[i]=155-a[i];
		else if(a[i]>='a'&&a[i]<='z')
		b[i]=219-a[i];
		else b[i]=a[i];
	}
	printf("密码为:");
	puts(b);
	printf("源码为: ");
	puts(a);
	return 0;
}
#include
#include
main()
{
    char a[999],b[999],c[999999];
    int len,i,j;
    gets(a);
    gets(b);
	len=strlen(a);
    for(i=0;i<=len-1;i++)
    c[i]=a[i];
    for(j=0;b[j]!='\0';j++)
    c[i+j]=b[j];
    c[i+j]='\0';
    puts(c);
    return 0;
}
#include
#include
main()
{
    char s1[999],s2[999];
    int ans,i,total=0,total2=0,sum1=0,sum2=0;
    gets(s1);
    gets(s2);
    for(i=0;s1[i]!='\0';i++)
    {
	   total=int(s1[i]);
	   sum1+=total;
    }
    for(i=0;s2[i]!='\0';i++)
    {
	   total2=int(s2[i]);
	   sum2+=total2;
    }
    ans=sum1-sum2;
    printf("%d\n",ans); 
    return 0;
}
#include
#include
main()
{
	char s1[9999],s2[9999],temp1[9999],temp2[9999];
	int i,j;
	gets(s1);
	gets(s2);
	for(i=0;s1[i]!='\0';i++)
	{
	    temp1[i]=s1[i];
	    s1[i]='\0';
	}
    for(i=0;s2[i]!='\0';i++)
	{
	    temp2[i]=s2[i];
	    s2[i]='\0';
	}
	for(j=0;temp1[j]!='\0';j++)
	s2[j]=temp1[j];
	for(j=0;temp2[j]!='\0';j++)
	s1[j]=temp2[j];
	puts(s1);
	puts(s2);
	return 0;
}

你可能感兴趣的:(新的开始)