C程序設(shè)計(jì)教程與實(shí)驗(yàn)課后習(xí)題答案-給呆呆_第1頁
C程序設(shè)計(jì)教程與實(shí)驗(yàn)課后習(xí)題答案-給呆呆_第2頁
C程序設(shè)計(jì)教程與實(shí)驗(yàn)課后習(xí)題答案-給呆呆_第3頁
C程序設(shè)計(jì)教程與實(shí)驗(yàn)課后習(xí)題答案-給呆呆_第4頁
C程序設(shè)計(jì)教程與實(shí)驗(yàn)課后習(xí)題答案-給呆呆_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第1章習(xí)題一、選擇題1、A  2、D  3、C  4、D  5、B  6、C  7、C  8、B  9、B  10、A二、填空題1、一,函數(shù)體2、main(主),main(主)3、編譯,目標(biāo)4、.c,.obj,.exe5、縮進(jìn),無影響,/*  */三、程序分析題1、*         Very go

2、od!    * 2、    a=12,b=5    a=17,b=22 3、r= 5.50,s=95.033098 四、編程題1用printf()函數(shù)在屏幕上輸出自己的班級(jí)、學(xué)號(hào)、姓名。#include"stdio.h"void main() printf("班級(jí):BX1109n");    printf("學(xué)號(hào):111003

3、530901n");    printf("姓名:王孟榮n");      2從鍵盤輸入兩個(gè)整數(shù),計(jì)算它們的和、差、積、商,并在屏幕上輸出結(jié)果。 #include<stdio.h>void main()int x,y,a,b,c;float d;printf("Please Input Two Integers:n");scanf("%d%d",

4、&x,&y);a=x+y;b=x-y;c=x*y;d=1.0*x/y;printf("a=%dnb=%dnc=%dnd=%fn",a,b,c,d);                             第2章習(xí)題一、選擇題15   BCDC

5、D610  DBBCA二、填空題1單精度浮點(diǎn)型、雙精度浮點(diǎn)型、字符型203x%10*10+x/1045.555.7   206sin(sqrt(x*x)/(a*b)7 ,81111011   173  7B93   3103三、程序分析題1 7,8,102 1,33.   5  F4 (int)i=12, 12.505 461579112四、編程題1編寫程序

6、,求表達(dá)式c=21%9-(float)a+4/b*b的值,假設(shè)表達(dá)式中a和b的值分別由鍵盤輸入。  #include<stdio.h>void main( )     int a,b;    float c;    printf("Please input data a,b: ");    sca

7、nf("%d%d",&a,&b);    c=21%9-(float)a+4/b*b;    printf("c=%5.2fn", c); 2. 編寫程序,從鍵盤輸入兩個(gè)整數(shù)存入變量a和b中,求a2-b2的值并輸出。   #include<stdio.h>void main( )     int a,b,c;&

8、#160;   printf("Please input data a,b: ");    scanf("%d%d",&a,&b);    c=a*a-b*b;    printf("c=%dn", c);  第3章習(xí)題一、選擇題12345678910DCA、B ABBB、C BDD 二、填空

9、題1. 有窮性 確定性 可行性2.  #3. 從終端(鍵盤)輸入一個(gè)字符4.  m   d5.  97,g6.  123.456000,   123.46, 1237. 格式控制符不正確(輸入數(shù)據(jù)時(shí)不能控制列寬和小數(shù)位數(shù))8. 63,63,77,3f9. %f%f  &x,&y10. <stdio.h> 

10、60; ch   ch三、程序分析題1. c=112. a=123  f=4573. x=345  y=3.4600004. a=1,b=3  a=3,b=15. (題目需修改為:從鍵盤輸入一個(gè)除a和z以外的小寫字母)程序的功能:從鍵盤輸入一個(gè)除a和z以外的小寫字母,求出該字母對(duì)應(yīng)的大寫字母的前趨和后繼字母,然后順序輸出此三個(gè)大寫字母,每個(gè)字母所占列寬為3。運(yùn)行結(jié)果: 假如輸入:f '   

11、;        輸出:      E  F  G 四、編程題1編寫程序,計(jì)算的值并輸出(保留3位小數(shù)),其中a、b的值由鍵盤輸入。#include <stdio.h>#include<math.h>void main( )  float a, b,x;   scanf("%

12、f%f", &a, &b);   x=(a*a+b*b)/sqrt(3*(a+b);   printf("x=%.3fn",x); 2編寫程序,從鍵盤輸入一個(gè)梯形的上底a、下底b和高h(yuǎn),輸出梯形的面積s。 #include <stdio.h>#include<math.h>void main( )  float a, b,h,s;  &#

13、160;scanf("%f,%f,%f", &a,&b,&h);   s=(a+b)*h/2;   printf("梯形面積s=%.2fn",s);  3編寫程序,在屏幕上輸入你姓名的第一個(gè)字母,顯示出該字母以及下面的信息:  Hello!This is a c program.  My name is 第一個(gè)字母 #inc

14、lude <stdio.h>void main( )    char name;  name=getchar();  putchar(name);  printf("nHello!n");  printf("This is a c program.n");  printf("My name is&

15、#160;%cn",name);  第4章習(xí)題一、選擇題12345678910BBCBCA CBACC 二、填空題1.  !   &&   |2.  13.  a   b4.  15.  06.  x%4= =0 && x%100!=07.  5 

16、  68.  A9.  x<0 | x>10 && x<5010.  -1三、程序分析題1 No2 -23.   5    3    24 #&5 (1)2    (2)3    CC  

17、 a=2,b=2,c=4四、編程題1. 有一個(gè)函數(shù)如下:            x2-2         (x<5) y=     3x+5        (5x<50)    

18、        x-     (x50)   編寫程序,輸入x的值,計(jì)算相應(yīng)的y值輸出(保留3位小數(shù))。#include<stdio.h>#include<math.h>void main()  float x,y;    scanf("%f", &x);   

19、60;if(x<5)  y=x*x-2;    else if(x<50) y=3*x+5;     else   y=x-sqrt(4*x-1);    printf("x=%f, y=%.3fn", x,y); 2編寫一個(gè)程序,根據(jù)輸入的三角形的三條邊判斷是否能組成三角形,如果可以則輸出它的面積和三角形類型(等邊、等腰、直角、一般三

20、角形)。#include<stdio.h>#include<math.h>void main( )  float a, b, c, s, area;   scanf("%f,%f,%f", &a,&b,&c);   if(a+b>c && b+c>a && a+c>b) 

21、    s=(a+b+c)/2;      area=sqrt(s*(s*(s-a)*(s-b)*(s-c);       printf("area=%fn",area);       if(a=b && b=c)      printf(&q

22、uot;等邊三角形n");        else if(a=b | a=c | b=c)          printf("等腰三角形n");            else if(a*a +

23、60;b*b= c*c)|(a*a + c*c= b*b)|(b*b + c*c = a*a)              printf("直角三角形n");                else&#

24、160; printf("一般三角形n");    else printf("不能組成三角形n"); 3設(shè)獎(jiǎng)金稅率r有如下的要求 (n代表獎(jiǎng)金) :       0        n<1000          &

25、#160;    5%     1000n<2000    r=    8%     2000n<3000          10%    3000n<6000     &

26、#160; 15%    6000n用switch多分支選擇語句編寫程序,輸入獎(jiǎng)金值,計(jì)算并輸出相應(yīng)的稅率和實(shí)際應(yīng)得獎(jiǎng)金值。#include<stdio.h>void main( )  float n, r, s;   int m;   printf("請(qǐng)輸入獎(jiǎng)金值:");   scanf("%f", &n)

27、;   if(n>=6000)  m=6;   else  m=n/1000;   switch(m)     case 0: r=0; break;      case 1: r=0.05; break;      case

28、0;2: r=0.08; break;      case 3:       case 4:      case 5: r=0.1; break;      case 6: r=0.15; break;    

29、s=n-r*n;  printf("稅率r=%.0f%, 獎(jiǎng)金值n=%.2f, 實(shí)際應(yīng)得獎(jiǎng)金值s=%.2fn",r*100, n, s); 4. 從鍵盤輸入任意4個(gè)數(shù)a、b、c、d,按照從大到小的順序排列后重新輸出。#include<stdio.h>void main( )  int a, b, c, d,t;   scanf("%d,%d,%d,%d",

30、 &a,&b,&c,&d);   if(a<b)t=a;a=b;b=t;   if(a<c)t=a;a=c;c=t;   if(a<d)t=a;a=d;d=t;   if(b<c)t=b;b=c;c=t;   if(b<d)t=b;b=d;d=t;   if(c<d)t=c;c=d;d=t;   printf(

31、"%d %d %d %dn", a,b,c,d); 5. 給出一個(gè)不超過4位數(shù)的正整數(shù),判斷它是幾位數(shù),并按逆向輸出各位數(shù)字。例1234,輸出為4321。#include<stdio.h>void main( )  int num,i,j,k,m;   printf("輸入一個(gè)少于4位的正整數(shù):");   scanf("%d",&num);

32、0;  if(num>=0 && num<=9999)    if(num>1000 && num<=9999)       printf("是一個(gè)4位數(shù)n");   m=num%10;           

33、60; /*求個(gè)位上的數(shù)字*/   k=num/10%10;          /*求十位上的數(shù)字*/   j=num/100%10;         /*求百位上的數(shù)字*/       i=num/1000;     

34、      /*求千位上的數(shù)字*/       printf("逆序數(shù)為:%d%d%d%dn",m,k,j,i);        else if(num>=100)      printf("是一個(gè)3位數(shù)n");m=num%10;   

35、0;        /*求個(gè)位上的數(shù)字*/k=num/10%10;         /*求十位上的數(shù)字*/    j=num/100;           /*求百位上的數(shù)字*/      printf("逆序

36、數(shù)為:%d%d%dn",m,k,j);            else if(num>=10)    printf("是一個(gè)2位數(shù)n"); m=num%10;    /*求個(gè)位上的數(shù)字*/ k=num/10;    /*求十位上的數(shù)字*/    

37、0;  printf("逆序數(shù)為:%d%dn",m,k);           else     printf("是一個(gè)1位數(shù)n");     printf("逆序數(shù)為:%dn",num);         else&#

38、160;printf("是一個(gè)無效的數(shù)n"); 第5章習(xí)題一、選擇題12345678910BCBCA    BDBAB 二 填空題1.  循環(huán)   switch2.  4,73.  64.  # # 5.  0 2   6.  18 7.  1  8

39、.  sum=80  9.  c=getchar()    n:m10.  i %13= =0  break三 程序分析題1. output1:21  6  output2: 5  6  output3: 5  7  72.  n=73.  

40、;Max=18    Min=34.  1*1=1    2*1=2  2*2=4    3*1=3  3*2=6  3*3=95.  0  1  2  3    1  2  3  0   

41、 2  3  0  1    3  0  1  2四、編程題1. 從鍵盤上輸入若干字符,以按Enter鍵結(jié)束,統(tǒng)計(jì)其中字符A或a的個(gè)數(shù)。#include "stdio.h"main() char ch;  int k=0;  while(ch=getchar()!='n')  

42、60; if(ch='A' | ch='a')       k=k+1;   printf("%dn",k);2. 利用=×的前100項(xiàng)之積計(jì)算p的值。    #include  <stdio.h>main()double term, result = 1; /*累乘項(xiàng)初值應(yīng)為1*/i

43、nt n;for (n=2; n<=100; n = n + 2)   term=(double)( n * n)/(n-1)*(n+1); /*計(jì)算累乘項(xiàng)*/   result = result * term;printf("result = %fn", 2*result);3. 用1元5角錢人民幣兌換5分、2分和1分的

44、硬幣(每一種都要有)共100枚,問共有幾種兌換方案?每種方案各換多少枚?    #include<stdio.h>main()int x,y,z,count=0;for(x=1;x<=28;x+) for(y=1;y<=73;y+)  z=100-x-y;  if(5*x+2*y+z=150)     count+;  printf("%d,%d,%dn",x,y,z);printf(&quo

45、t;count=%dn",count);4. 雞兔同籠,共有98個(gè)頭,386只腳,編程求雞、兔各多少只。#include <stdio.h>main() int x, y;for (x=1;x<=97;x+)  y=98-x;if(2*x+4*y=386)   printf("雞=%d,兔=%d",x,y); 5. 將一個(gè)正整數(shù)分解質(zhì)因數(shù)。例如:輸入90,打印出90=2*3*3*5。#include  <stdi

46、o.h>main()  int n,i;  printf("nplease input a number:n");  scanf("%d",&n);  printf("%d=",n);  for(i=2;i<=n;i+)     while(n!=i)      if(

47、n%i=0)   printf("%d*",i);        n=n/i;        else  break;   printf("%d",n);6. 從鍵盤任意輸入一個(gè)4位數(shù)x,編程計(jì)算x的每一位數(shù)字相加之和。例如,輸入x為1234,則由1234分離出其千位1、百位2、十位3、個(gè)位4,然后計(jì)算1+2

48、+3+4=10,并輸出10。#include<stdio.h>#include<math.h>main()int i1,i2,i3,i4,k,n;printf("Inputdatais:");scanf("%d",&n);k=fabs(n); /*取絕對(duì)值*/i1=k/1000; /*分離出千位*/i2=(k-i1*1000)/100; /*分離出百位*/i3=(k-i1*1000-i2*100)/10;     /*分離出十位*/i4=k%10; /*分離出個(gè)位*/pri

49、ntf("The sum of the total bit is %dn",i1+i2+i3+i4); 7. 打印出所有"水仙花數(shù)",所謂"水仙花數(shù)"是指一個(gè)三位數(shù),其各位數(shù)字立方和等于該數(shù)本身。例如:153是一個(gè)水仙花數(shù),因?yàn)?53=13+53+33。#include <stdio.h>void main()   int i,j,k,n;  printf

50、("parcissus numbers are:n");  for (n=100;n<1000;n+)       i=n/100;    j=n/10-i*10;    k=n%10;    if (n=i*i*i+j*j*j+k*k*k)      print

51、f("%dn",n);      8. 利用泰勒級(jí)數(shù)sin(x)計(jì)算sin(x) 的值。要求最后一項(xiàng)的絕對(duì)值小于10-5,并統(tǒng)計(jì)出此時(shí)累加了多少項(xiàng)(x由鍵盤輸入)。#include  <math.h>#include  <stdio.h>main()int n=1,count=1;float x;double sum,term;      &#

52、160;/*因?yàn)槲粩?shù)多,所以定義為雙精度 */printf("Input x: ");scanf("%f", &x);sum=x;term=x;           /*賦初值*/doterm=-term*x*x/(n+1)*(n+2);sum=sum+term;        /*累加 */n=n+2;count+;while(

53、fabs(term)>=1e-5);printf("sin(x)=%.1f,count=%dn",sum,count); 9編寫一個(gè)猜數(shù)游戲:任意設(shè)置一個(gè)整數(shù),請(qǐng)用戶從鍵盤上輸入數(shù)據(jù)猜想設(shè)置的數(shù)是什么,告訴用戶是猜大了還是小了。10次以內(nèi)猜對(duì),用戶獲勝;否則,告訴用戶設(shè)置的數(shù)據(jù)是什么。#include <stdio.h>void main()int num=123,x,n; printf("hint:0<number<1000n");  /*給出數(shù)據(jù)范圍的

54、提示信息*/ for(n=1;n<=10;n+) printf("guess:");  scanf("%d",&x);  if(x=num)  printf("Win!n");break;  if(x>num)    printf("bigger!n");  if(x<num)    prin

55、tf("smaller!n");  if(n=11)  printf("Lost!the number is %dn",x); 10. 編程輸出以下圖案。*#include <stdio.h>  main()  int i,j;  for(i=1;i<=4;i+)      for (j=20-i;j

56、>=1;j-)      printf("%c",' ');    for (j=0;j<2*i-1;j+)           printf("*");    printf("n");    for&

57、#160;(i=3;i>=1;i-)      for (j=20-i;j>=1;j-)           printf("%c",' ');    for (j=0;j<2*i-1;j+)         

58、60;     printf("*");    printf("n");   第6章習(xí)題一、選擇題12345678910DADBDCBDBD 二 填空題1.  02.  14  m310  74.  數(shù)據(jù)類型 5.  strcpy(S2,S1)    

59、;#include<string.h>  6.  0   3 7.   7,6  8.   sum=0    i=j    aij  9.  410.  Tony三 程序分析題1.   max=85    &

60、#160;min=5     sum=180     aver=30.002.   a=2    b=2    c=2    d=2    e=1    f=2    g=23.  j=454. &#

61、160;Ti_saCPorm    Tss_Pgm5.  1  1  1  5四、編程題1從鍵盤輸入15個(gè)整數(shù),存放在數(shù)組中,找出其中最小數(shù)并指出其所在的位置。#include<stdio.h>#define N 15main()int min,i,j,aN; printf("Enter N integers:n");  for(i=0;i<N;i+)scan

62、f("%d",&ai);min=a0;for(i=1;i<N;i+) if(min>ai)   min=ai;   j=i;   printf("%d,%d",min,j); 2將輸入的十進(jìn)制正整數(shù)化為十六進(jìn)制數(shù)。#include <stdio.h>main()int i,x,j,a20;printf("請(qǐng)輸入一個(gè)正整數(shù):");while(1)  

63、0;  scanf("%d",&x);   if(x<0)     printf("數(shù)據(jù)輸入錯(cuò)誤,請(qǐng)重新輸入一個(gè)正整數(shù):");   else break;i=0;while(x)ai=x%16;x=x/16;i+;    for(j=i-1;j>=0;j-)if(aj<=9)printf("%d",aj);else if(

64、aj<=15)printf("%c",aj+'A'-10);printf("n"); 3從鍵盤輸入一行字符,統(tǒng)計(jì)其中有多少單詞,假設(shè)單詞之間以逗號(hào)分隔。#include <stdio.h>     void main()            char string81;   

65、0;   int i,num=0,word=0;       char c;       gets(string);       for (i=0;(c=stringi)!='0'i+)       if(c=',') 

66、;word=0;       else if(word=0)   word=1;num+;printf("There are %d words in the line.n",num); 4從鍵盤輸入一字符串,放在字符數(shù)組a中,將字符數(shù)組a中下標(biāo)值為偶數(shù)的元素按從小到大排序。#include<stdio.h>#include<string.h>void main()

67、   char a80,t,m;  int i,j,k;  printf("請(qǐng)輸入一字符串:");  gets(a);  k=strlen(a);  for(i=0;i<=k-2;i+=2)    m=i;     for(j=i+2;j<=k; j+=2  )if(am>aj) 

68、         m=j;if(m!=i) t=ai;ai=am;am=t;         puts(a);    printf("n");   5編寫程序輸出以下楊輝三角形(要求輸出10行)。1       1   

69、    11       2       11       3       3       11       4  &#

70、160;    6       4       11       5       10      10      5   

71、0;   1                               #include<stdio.h>#include<string.h>void main() int i,j,a1010; 

72、; for(i=0;i<10;i+)   ai0=aii=1;     for(j=1;j<i;j+)        aij=ai-1j-1+ai-1j;   for(i=0;i<10;i+)       for(j=0;j<=i;j+)printf("%6d",aij); 

73、  printf("n");      6編程將s數(shù)組中的字符串的正序和反序進(jìn)行連接,形成一個(gè)新串放在t數(shù)組中。例如,當(dāng)s數(shù)組中字符串為"ABCD" 時(shí),則t數(shù)組中的內(nèi)容應(yīng)為:"ABCDDCBA"。#include<stdio.h>#include<string.h>main()  char s100, t100;    int i,

74、d;printf("Please enter string S:"); scanf("%s",s);  d=strlen(s);  for(i=0;i<d;i+)  ti=si;  for(i=0;i<d;i+)  td+i=sd-1-i;  t2*d='0'  printf("The result is: %

75、sn",t); 7某公司在傳輸數(shù)據(jù)過程中為了安全要對(duì)數(shù)據(jù)進(jìn)行加密,若傳遞的是四位的整數(shù),對(duì)其進(jìn)行加密的規(guī)則為:每位數(shù)字都加上5,然后用和除以10的余數(shù)代替該數(shù)字,再將第一位和第四位交換,第二位和第三位交換。如:輸入數(shù)字7659,則加密后的數(shù)字為4012#include<stdio.h>main() int a,i,aa4,t;printf("輸入一個(gè)需加密的四位數(shù)整數(shù):");scanf("%d",&a);aa0=a%10;aa1=a%100/10;aa2=a%1000/100;aa3=a/100

76、0;for(i=0;i<=3;i+)aai+=5;aai%=10;for(i=0;i<=3/2;i+)t=aai;aai=aa3-i;aa3-i=t;printf("加密后的數(shù)字為:");for(i=3;i>=0;i-)printf("%d",aai);printf("n"); 8編寫程序查找數(shù)值18在以下二維數(shù)組中第一次出現(xiàn)的位置。     3    4    5 &

77、#160;  188    12   16   5443   34   18   7 #include <stdio.h>main() int i,j,a34=3,4,5,18, 8,12,16,54, 43,34,18,7;  for(i=0;i<3;i+)  

78、0;for(j=0;j<4;j+)     if(aij=18) break;if(j<4)break;    printf("數(shù)值18第一次出現(xiàn)的位置在%d行,第%d列n",i+1,j+1); 9設(shè)有4行4列的數(shù)組a,其元素aij=3*i+2*j-6。編寫程序,實(shí)現(xiàn)如下功能:(1) 求第二行4元素的累加和;(2) 求第四列4元素的平均值;(3) 求主對(duì)角線4元素中負(fù)數(shù)的個(gè)數(shù)。#include <stdio.

79、h>void main()  int a44,i,j,s=0,m=0;float n=0;for(i=0;i<4;i+)for(j=0;j<4;j+)aij=3*i+2*j-6;printf("原始數(shù)組為:n");for(i=0;i<4;i+)  for(j=0;j<4;j+)printf("%3d",aij);printf("n");for(j=0;j<4;j+)s+=a1j;printf("第二行4元素累加和為:%d

80、n",s);for(j=0;j<4;j+)n+=aj3;printf("第四列4元素平均值為:%.2fn",n/4.0);for(i=0;i<4;i+)if(aii<0)m+;printf("主對(duì)角線4元素中負(fù)數(shù)的個(gè)數(shù)為:%dn",m); 10約瑟夫環(huán)問題:編號(hào)為1,2,3,.,n的n個(gè)人按順時(shí)針方向圍坐一圈,每人持有一個(gè)正整數(shù)密碼。一開始任選一個(gè)正整數(shù)m作為報(bào)數(shù)上限值,從第一個(gè)人開始按順時(shí)針報(bào)數(shù),報(bào)到m時(shí)停止,報(bào)m的人出列,將他的密碼作為新的m值,從他在順時(shí)針方向的下一個(gè)人開始重新從1報(bào)數(shù),如此下去,直到所有人全部

81、出列為止。設(shè)計(jì)程序求出出列順序。分析:設(shè)整型數(shù)組a中保存n個(gè)人的密碼,對(duì)應(yīng)的人出列后,數(shù)組元素置0作為標(biāo)志。順時(shí)針確定下一個(gè)人的方法,可將下標(biāo)加1,再對(duì)n求余。#include <stdio.h>#define N 100main() int a100;  int i,j,m,n,k=0;  printf("輸入人數(shù)n和任選的一個(gè)正整數(shù)m:");  scanf("%d%d",&n,&m); 

82、0;printf("輸入n個(gè)人的密碼: ");  for (i=0;i<n;i+)     scanf("%d",&ai);  printf("n出列順序?yàn)? ");  for(i=0;i<n;i+)     j=1;      while(j<m) &

83、#160;     while(ak=0) /*跳過已出列的人*/        k=(k+1)%n;        j+;        k=(k+1)%n;           

84、0;while(ak=0) /*跳過已出列的人*/        k=(k+1)%n;      printf("%d ",k+1);      m=ak;   ak=0;      第7章習(xí)題一、選擇題12345678910 ADDBADCDBA 

85、二 填空題1.  main()2.  main()3函數(shù)首部4.  解決函數(shù)必須“定義在前,使用在后”的原則問題5.  int6.  定義    調(diào)用 7.   位置傳遞    值傳遞  8.  return  void  9.  void f(float&#

86、160;a,float b)      float f(float a,float b)10.  static三 程序分析題1.   a=482.   8,173.   27214.  BASIC    C    COBOL    FORT

87、RAN    PASCAL    Smalltalk5.  6    1  2  3    6  5  4 四、編程題1寫一個(gè)判斷素?cái)?shù)的函數(shù),在主函數(shù)輸入一個(gè)整數(shù),輸出是否素?cái)?shù)的信息。#include <stdio.h>#include<math.h>void main() 

88、int prime(int);  int n;  printf("Input an integer:");  scanf("%d",&n);  if (prime(n)    printf("n %d is a prime.n",n);  else    pri

89、ntf("n %d is not a prime.n",n);   int prime(int n)  int flag=1,i;   for (i=2; i<sqrt(n) && flag=1;i+)     if (n%i=0)     

90、60; flag=0;   return(flag);   2寫一個(gè)函數(shù),用于實(shí)現(xiàn)函數(shù)strcmp()的功能,能將兩個(gè)字符串進(jìn)行比較,將兩個(gè)字符串中第一個(gè)不相同字符的ASCII碼值之差作為函數(shù)的返回值。#include <stdio.h>int MyStrcmp(char s, char t);main()char  str120,str220;printf("Input string:");gets(str1);

91、printf("Input another string:");gets(str2);if (MyStrcmp(str1,str2)>0)printf("str1>str2n");else if (MyStrcmp(str1,str2)<0)    printf("str1<str2n");       else  printf(&q

92、uot;str1=str2n"); int MyStrcmp(char s, char t) int i;for (i=0;si=ti; i+)         if (si='0')  return 0    return (si-ti);   3. 寫一個(gè)函數(shù)

93、,用于實(shí)現(xiàn)函數(shù)strcat()的功能, 能將兩個(gè)字符串連接。#include <stdio.h>void main()void concatenate(char string1,char string2,char string); char s1100,s2100,s100; printf("input string1:"); scanf("%s",s1); printf("input stri

94、ng2:"); scanf("%s",s2); concatenate(s1,s2,s); printf("nThe new string is %sn",s);  void concatenate(char string1,char string2,char string)int i,j; for (i=0;string1i!='0'i+)  

95、60;stringi=string1i; for(j=0;string2j!='0'j+)   stringi+j=string2j; stringi+j='0' 4. 從鍵盤任意輸入10個(gè)整數(shù),用函數(shù)編程實(shí)現(xiàn)將其中最大數(shù)與最小數(shù)的位置對(duì)換后,再輸出調(diào)整后的數(shù)組。#include  <stdio.h>#define ARRSIZE 10   void  MaxMinExchang(int

96、60;a, int n)int  maxValue=a0, minValue=a0, maxPos=0, minPos=0;int  i, temp;for (i=1; i<n; i+)if (ai > maxValue)maxValue = ai;          maxPos = 

97、i;        else if (ai < minValue)minValue = ai;           minPos = i;          temp = amaxPos;amaxPos&

98、#160;= aminPos;aminPos = temp;main()int aARRSIZE,i;printf("Input %d Numbers:n",ARRSIZE);  for (i=0; i<ARRSIZE; i+)scanf("%d", &ai);     MaxMinExchang(a, ARRSIZE);printf("After

99、60;MaxMinExchange:n");for (i=0;i<ARRSIZE; i+)printf("%4d", ai);printf("n")  5. 寫一函數(shù),能對(duì)給定的一個(gè)二維數(shù)組(3×3)進(jìn)行轉(zhuǎn)置(即行列互換)。#include <stdio.h>#define N 3int arrayNN;void main() void convert(int array3);i

100、nt i,j; printf("input array:n"); for (i=0;i<N;i+)   for (j=0;j<N;j+)     scanf("%d",&arrayij); printf("noriginal array :n"); for (i=0;i<N;i+)  for 

101、(j=0;j<N;j+)    printf("%5d",arrayij);   printf("n");  convert(array); printf("convert array:n"); for (i=0;i<N;i+)  for (j=0;j<N;j+)     printf("%5d&qu

102、ot;,arrayij);   printf("n");    void convert(int array3)int i,j,t; for (i=0;i<N;i+)   for (j=i+1;j<N;j+)    t=arrayij;     arrayij=arrayji;   &#

103、160; arrayji=t;     6. 寫一函數(shù),能用“起泡法”對(duì)輸入的10個(gè)字符按由小到大順序排序。#include <stdio.h>#include <string.h>#define N 10char strN;void main()void sort(char str); int i,flag; for (flag=1;flag=1;)  printf("input string:n");   scanf("%s",st

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論