6.15复习题9.#includeint main(void){    int n,m;  
 n=10;/*自家把n写成了m变成的十二万分循环*/    while(++n<=13)      
 printf(“%dn”,n);    do        printf(“%d”,n);  
 while(++n<=12);/*do while循环的while后边原本要加二个分号.    因为do
while循环本人是多少个话语,所以它必要二个说尽的分店*/       
printf(“n***n”);       for(n=1,m=5;n0;n–)    {      
for(m=0;m#define SIZE 8int main(void){    int by_twos[SIZE];    int
index;    for(index=1;index<=SIZE;index++)       
by_twos[index]=2+index; /*读入8个数据*/    
for(index=1;index<=SIZE;index++) 
/*本条for前面包车型地铁四个语句要用{}括起来,                                   
   否则只进行当前一句*/     {           printf(” 
%d”,by_twos[index]);/*by_twos[]是叁个数组*/      
printf(“n”卡塔尔(قطر‎;     }    return
0;;}注:还足以求那一个数的平均值,总和,差不离等等输出结果如下:11.#include#define
SIZE 8int main(void){    int by_twos[SIZE];    int index;   
for(index=0;index#define SIZE 6int main(void){    char
by_twos[SIZE];/*创建叁个全体6数组*/    int index=0;    char
word;     for(index=0;index=’a’ &&
word<=’z’)/*也足以用islower(State of Qatar函数来判断输入的是或不是是         
小写字母,不过islower(卡塔尔(قطر‎函数是由ctype.h头文件包所提供*/       
by_twos[index]=word;    }     for(index=0;index#define SIZE 5int
main(void){    int i,j;    i=0;    char word;     for(i=0;i#define SIZE
6int main(void){    int i,j;/*声称语句*/    i=0;    char word,next;   
scanf(“%c”,&word);/*随机输入多个字母*/     for(i=0;i#define row 5int
main(void){    int i,j,rank;/*注脚语句*/    i=0;rank=9;    char
word;    char next;    if(scanf(“%c”,&word)==1 && word>=’A’ &&
word<=’Z’)/*随意输入一个大写字母*/    {        for(i=0;i=’A’ &&
next<=’Z’)/*那是做一回推断,因为大写字母降序时只怕会有越出大写字母的限定*/   
         printf(“%c”,next++);         }       
 next-=1;/*要有这一语句,因为上贰个for循环在做最后二回剖断之后,next的值已经+1   
   
 而上边的for循环须要从最后三个出口字母开始往下滑,所以这一步是必需的*/   
     for(j=0;j<=i;j++)         {             next–;           
 if(next>=’A’ &&
next<=’Z’)/*那是做一次推断,因为大写字母降序时恐怕会有越出大写字母的范围*/   
         printf(“%c”,next);         }      
printf(“n”);/*换行管理*/          }   }     return 0;}

风度翩翩、指针 用指针方法编写叁个顺序,输入 3
个整数,将它们按由小到大的种种输出

You may have heard of the book ‘2001 – A Space Odyssey’ by Arthur C.
Clarke, or the film of the same name by Stanley Kubrick. In it a
spaceship is sent from Earth to Saturn. The crew is put into stasis for
the long flight, only two men are awake, and the ship is controlled by
the intelligent computer HAL. But during the flight HAL is acting more
and more strangely, and even starts to kill the crew on board. We don’t
tell you how the story ends, in case you want to read the book for
yourself 🙂

5.

#include <stdio.h>

After the movie was released and became very popular, there was some
discussion as to what the name ‘HAL’ actually meant. Some thought that
it might be an abbreviation for ‘Heuristic ALgorithm’. But the most
popular explanation is the following: if you replace every letter in the
word HAL by its successor in the alphabet, you get … IBM.

#include<stdio.h>

void swap(int *pa,int *pb) {

Perhaps there are even more acronyms related in this strange way! You
are to write a program that may help to find this out.

#define row 3  /*显著表的上限和下限,作者想应该是正是表的行数和列数*/

int temp;

Input

#define rank 3

temp = *pa;

The input starts with the integer n on a line by itself – this is the
number of strings to follow. The following n lines each contain one
string of at most 50 upper-case letters.

int main(void)

*pa = *pb;

Output

{

*pb = temp;

For each string in the input, first output the number of the string, as
shown in the sample output. The print the string start is derived from
the input string by replacing every time by the following letter in the
alphabet, and replacing ‘Z’ by ‘A’.

    int i,n,j;/*宣称语句*/

}

Print a blank line after each test case.

    i=0;n=1;

void main() {

Sample Input

         int munber;

int a,b,c,temp;

2
HAL
SWERC
Sample Output

        
for(i=0;i<row;i++)/*一个外部循环来处理行*/ 

澳门新葡萄京官网首页,scanf(“%d%d%d”,&a,&b,&c);

String #1
IBM

         {

if swap(&a,&b);

String #2
TXFSD

          
scanf(“%d”,&munber);/*随便输入三个数字*/

if swap(&b,&c);

 [plain]
 #include <stdio.h>
 #include <string.h>
    int main()  {    
  int  length;   
   int  num;    
  int i;     
 int  count=1;  
    char array[51]; 
       scanf(“%d”, &num); 
     getchar();      
  while(num–)       {                gets(array);    
            length=strlen(array);       
    for(i=0; i<length; i++)       
    {                if(array[i]>=’A’ && array[i]<‘Z’) 
              {                    array[i]+=1;    
           }                else if(array[i]==’Z’)   
            {                    array[i]=’A’;     
          }            }          
 printf(“String #%dn”, count++);   
          for(i=0; i<length; i++)           
{                printf(“%c”, array[i]);   
                  }                       
    printf(“nn”);                   }     
   return 0;  }   #include <stdio.h>
#include <string.h>

     
for(j=0;j<rank;j++)/*叁此中间循环来列出每大器晚成行的大背头及其平方和立方*/

if swap(&a,&c);

int main()
{
     int  length;
     int  num;
     int i;
     int  count=1;
     char array[51];

                  
printf(”  %d”,n*=munber);

printf(“%d,%d,%d”,a,b,c);

     scanf(“%d”, &num);
     getchar();

                  
n=1;/*这一步比较重大,即贯彻n还原,不然就能够冒出上三回巡回得到的结果被下叁回利

}

     while(num–)
     {   
          gets(array);
  
          length=strlen(array);
          for(i=0; i<length; i++)
          {
              if(array[i]>=’A’ && array[i]<‘Z’)
              {
                  array[i]+=1;
              }
              else if(array[i]==’Z’)
              {
                  array[i]=’A’;
              }
          }
          printf(“String #%dn”, count++);

用.*/

二、
编写二个函数,将三个字符串中的元音字母复制到另贰个字符串,然后在主函数中输出。

          for(i=0; i<length; i++)
          {
              printf(“%c”, array[i]);         
          }
         
              printf(“nn”);
         
     }

                  

#include<stdio.h>

     return 0;
}
  

           
printf(“n”);/*换行管理*/

int main()

澳门新葡萄京官网首页 1 
(该题输出有一点难点,即出口都空行State of Qatar

         }

{void copy(char c[],char b[]);

may have heard of the book 2001 – A Space
Odyssey by Arthur C. Clarke, or the film of the same name by Stanley
Kubrick. In it a spaceship is sent from Earth to Saturn. The
crew…

    return 0;;

char a[100],b[20];

}

gets;

6.

copy;

#include<stdio.h>

puts;

#include <string.h>/*提供strlen(State of Qatar函数原型*/

return 0;

int main(void)

}

{

void copy(char c[],char b[])

    int i,n;/*宣示语句*/

{int i,j=0;

    i=0;

for(i=0;c[i]!=’’;i++)

         char
words[20];

if(c[i]==’a’||c[i]==’A’||c[i]==’e’||c[i]==’E’||c[i]==’i’||c[i]==’I’||c[i]==’O’||c[i]==’o’||c[i]==’u’||c[i]==’U’)

    printf(“输入三个单词:”State of Qatar;

{b[j]=c[i];j++;}

        
scanf(“%s”,words);/*随便输入三个单词*/

b[j]=’’;

        
n=strlen(words);

return;

        
for(i=n;i<=n&&i>=0;i–)/*叁个循环来促成反向输出*/ 

}

         {

三、写生机勃勃函数,对输入的意气风发组整数按由小到大的顺序排序,在main主函数调用该函数达成排序

          
     printf(“%c”,words[i]);

#include<stdio.h>

         }

void main()

    return 0;;

{void paixu(int a[],int n);

}

int a[100],i,n;

printf(“需求对有个别数举办排序:”State of Qatar;

scanf(“%d”,&n);

printf(“请输入要排序的蓬蓬勃勃组数;

for(i=0;i<n;i++)

scanf(“%d”,&a[i]);

paixu;

for(i=0;i<n;i++)

printf(“%2d”,a[i]);

printf;

return;

}

void paixu(int a[],int n)

{int i,j,t;

for(j=0;j<n;j++)

for(i=0;i<n-1-j;i++)

if(a[i]>a[i+1])

{t=a[i];a[i]=a[i+1];a[i+1]=t;}

}

四、 编写多个函数,总括字符数组中山高校写字母的个数。

#include <stdio.h>

int main()

{char string[100],Le;

int count;

printf(“input string:n”);

_gets__; //输入字符串

Le=count; //调用count函数

printf(“大写字母有%d个”,Le卡塔尔;

return 0;

}

int count( char s[ ] )

{int sum=0,i;

for (i=0;s[i]!=’’;i++)

if (s[i]>=’A’ && s[i]<=’Z’)

sum++;

return sum;

}

五、从键盘输入二个字符串,删除此中的假名
a后输出。比方,输入字符串”abcaca”,输出 bcc。

#include <stdio.h>

#include <string.h>

void main()

{

char a[100],b[100];int i,j=0;

gets;

for(i=0;(a[i]!=’’);i++)

if(a[i]!=’a’)

{b[j]=a[i];j++;}

b[j]=’’;

printf;

}

六、
有风华正茂篇小说,共有3行文字,每行有柒十九个字符,须要分别总结出里面丹麦语大写字母、小写字母、数字、空格以致其余字符的个数。

#include <stdio.h>

#include <string.h>

void main()

{

char str[3][80];

int i,j,m=0,n=0,p=0,q=0,t=0;

for(i=0;i<3;i++)

gets;

for(i=0;i<3;i++)

{

for(j=0;j<strlen;j++)

{

if(str[i][j]>=’A’&&str[i][j]<=’Z’)

m++;

else if(str[i][j]>=’a’&&str[i][j]<=’z’)

n++;

else if(str[i][j]>=’0’&&str[i][j]<=’9′)

p++;

else if(str[i][j]==’ ‘)

q++;

else t++;}

}

printf(“大写字母有%d个n小写字母有%d个n数字有%d个n空格有%d个n别的字符有%d个n”,m,n,p,q,t);

}

七、 //求二个3×3的整数矩阵对角线成分之和。

#include <stdio.h>

void main()

{

int a[3][3],i,j,m=0;

for(i=0;i<3;i++)

for(j=0;j<3;j++)

scanf(“%d”,&a[i][j]);

for(i=0;i<3;i++)

for(j=0;j<3;j++)

if (i==j || i+j==2)

m=m+a[i][j];

printf;

}

八、 //用选择法对十二个整数排序。十二个整数用scanf函数输入。

#include <stdio.h>

void main()

{

int i,j,m,min,t,a[10];

for(i=0;i<10;i++)

scanf(“%d”,&a[i]);

for(i=0;i<9;i++)

{

m=i;min=a[i];

for(j=i+1;j<10;j++)

{

if(min>a[j])

{min=a[j];m=j;}

}

t=a[i];a[i]=a[m];a[m]=t;

}

printf(“排序后的数组为:n”);

for(i=0;i<10;i++)

printf(“%d “,a[i]);

}

九、
//用递归法求Fibonacci数列第n项的值。该数列有如下的性状:第4个数和第一个数都为1,从第一个数开台,各样数皆以其前面八个数之和。即:

#include<stdio.h>

long Fibonacci

{ long f;

if(n==0||n==1)

f=n;

else

f=Fibonacci+Fibonacci;

return f;

}

int main()

{

int n;

scanf(“%d”,&n);

printf=%dn”,n,Fibonacci;

return 0;

}

十、 //写八个论断素数的函数,在主函数输入七个整数,输出是不是素数的音讯。

要求:

函数名称为prime,假设是素数,函数再次来到值为1,假若不是素数,函数重回值为0。

#include<stdio.h>

int prime

{int i,f;

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

{if break;}

if f=0;

else f=1;

return f;}

int main()

{int prime;

int a,x;

scanf(“%d”,&x);

a=prime;

if

printf;

else

printf;

return 0;}

保存剖断素数的函数,纠正主函数,必要达成出口100~200事情发生前的素数。

#include<stdio.h>

int prime

{int i,f;

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

{if break;}

if f=0;

else f=1;

return f;}

int main()

{int prime;

int a,x;

for (x=100;x<=200;x++)

{a=prime;

if

printf;

}

return 0;}

十生机勃勃、
//输出100以内装有能被3整余但不可能被5整除的数,按每5个数的款式出口。

#include <stdio.h>

void main()

{int i,k=0;

for (i=1;i<=100;i++)

{ if (i%3==0 && i%5!=0)

{printf;

k++;

if printf;

}

}

printf(“n个数:%dn”,k);

}

十六、
//输入风姿浪漫行字符,分别总计出里面包车型客车韩文字母、空格、数字和其它字符的个数。

#include <stdio.h>

void main()

{

int a=0,b=0,c=0,d=0;

char j;

for(;(j=getchar!=’n’;)

{ if(‘a'<=j && ‘z’>=j || ‘A'<=j &&’Z’>=j)

a++;

else if(‘0′<=j && ‘9’>=j)

b++;

else if

c++;

else d++;

}

printf(“字母%d 数字%d 空格%d 其他%dn”,a,b,c,d);

}

十八、
//本身编写三个求x的n次方的函数(函数名称为power,n为整数),在主函数中输入x和n的值,调用函数求出x的n次方。

#include<stdio.h>

double power(int x,int n)

{double t=1;

for(;n>=1;n–)

t=t*x;

return t;

}

void main()

{int x,n;

printf(“输入x和n的值:”);

scanf(“%d%d”,&x,&n);

power;

printf(“%.0fn”,power;

return;

}

十四、 /*以下顺序的作用为:通过输入年份和月份,判别前一个月的气数。请填空。

分析:

一年中1、3、5、7、8、10、6月份均为31天;4、6、9、11月份均为30天;若是该年是闰年,则十二月份为29天,不然为28天。

闰年的标准是:能被4整除但不能被100整除,恐怕能被400整除。*/

#include<stdio.h>

int main()

{ int y,m,d;

printf(“请输入年份和月份”卡塔尔(قطر‎;

scanf(“%d,%d”,&y,&m);

switch

{case 2:

if (m%4==0&&m%100!=0 || m%400==0卡塔尔(قطر‎ //判别是或不是为闰年

d=29;

else

d=28;

break;

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12: d=31;break;

case 4:

case 6:

case 9:

case 11:d=30;

}

printf(“%d年%d月份有%d天n”,y,m,d);

return 0;

}

十五、 /*打字与印刷如下图形。请填空。

*

* * *

* * * * *

* * * * * * *

*/

#include<stdio.h>

int main()

{ int i,j;

for (i=1;i<=4;i++)

{for (j=1;j<=10-i;j++) printf; //输出*事情未发生前的空格

for (j=1; j<=2*i-1;j++State of Qatarprintf;// 输出每意气风发行的”*”

printf; //输完每生龙活虎行后换行

}

return 0;

}

十六、 /*出口如下图形。

1

1 2 1

1 2 3 2 1

1 2 3 4 3 2 1

1 2 3 4 5 4 3 2 1

1 2 3 4 5 6 5 4 3 2 1

1 2 3 4 5 6 7 6 5 4 3 2 1

1 2 3 4 5 6 7 8 7 6 5 4 3 2 1

1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1

*/

#include<stdio.h>

int main()

{ int i,j;

for (i=1;i<=9;i++)

{for (j=1;j<=20-i;j++)

printf;

for (j=1;j<=i;j++)

printf;

for (j=i-1;j>=1;j–)

printf;

printf;

}

return 0;

}

十七、 // S=1/2+2/3+3/5+5/8+…… (12.278297)

#include <stdio.h>

void main()

{int i,m=1,n=2,a;

float b,s=0;

for(i=1;i<=20;i++)

{

b=m/n;a=n;n=m+n;m=a;

s=s+b;}

printf;

}

十八、 //S=1!+2!+3!+……10!进制

方法一:

#include <stdio.h>

void main()

{

int i,a=1,b=0;

for(i=1;i<=10;i++)

{a=a*i;

b=b+a;}

printf;

}

方法二:

#include<stdio.h>

void main()

{int i,s,a,n;

s=0;

for(i=1;i<=10;i++)

{

for(n=1,a=1;n<=i;n++)

a=a*n;

s=s+a;

}

printf(“s=%dn”,s);

}