




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第3章
三、編程題
1.編寫程序,輸入一個非負(fù)數(shù),輸出以此數(shù)為半徑的圓周長以及面積。
^include"stdio.h〃
#definePI3.1415
voidmain()
(
floatr,area,circumference;
scanf(n%f,,&r);
area=PI*r*r;
circumference=2*r*PI;
printf("area=%6.2f\ncircumference=%6.2f\n'\area,circumference);
)
2.編寫程序,輸出下面結(jié)果,注意,雙引號也要輸出:
mastudent!”
#include<stdio.h>
voidmain()
(
printf("VIVmastudent!
)
3.編寫程序,輸入一個小寫字母,將其轉(zhuǎn)換為大寫字母輸出。例如輸入b,則輸出B。提示:小寫字母和
對應(yīng)的大寫字母的ASCII碼值相差32o
voidmain()
(
charch;
ch=getchar();
ch-=32;
putchar(ch);
//printf(u%cn,ch);
)
4.編寫程序,輸入一個華氏溫度f,輸出其相應(yīng)的攝氏溫度c。華氏溫度和攝氏溫度的轉(zhuǎn)換公式為:
c=|(f-32)
#include<stdio.h>
voidmain()
(
floatf,c;
scanf(“%f”,&f);
c=5.0*(f-32)/9;
printf(“華氏溫度%5.2f轉(zhuǎn)換為攝氏溫度為:%5.2f\n",f,c);
第4章
三、編程題
1.輸入一個整數(shù),判斷這個整數(shù)是奇數(shù)還是偶數(shù)(提示:整數(shù)的奇偶性可以利用取余運(yùn)算符%判定)。
#include<stdio.h>
voidmain()
(
inta;
scanf(n%d",&a);
if(a%2)
printf("奇數(shù)\n“);
else
printf("偶數(shù)也”);
)
2.編寫程序,輸入一個24小時制的時間,轉(zhuǎn)換為12小時制時間后進(jìn)行輸出。以13點(diǎn)15分為例,輸入:
13:15,則輸出:下午1:15。
#include<stdio.h>
voidmain()
(
inthour,minute;
scanf("%d:%d”,&hour,&minule);
if(hour>12)hour=hour-12;
printf(n%d:%d\nn,hour,minute);
)
3.輸入年號,判斷它是否是閏年(如果年號能被400整除,或能被4整除,而不能被100整除,則是閏
年,否則不是)。
voidmain()
(
intyear;
scanf(u%dH,&year);
if(year%400==0||(year%4==0&&year%100==0))
printf("%d是閏年\n",year);
else
printf("%d不是閏年\n”,year);
4.輸入一個字符,如果是大寫字母則輸出對應(yīng)的小寫字母,如果是小寫字母則輸出相應(yīng)的大寫字母,如
果都不是則原樣輸出。
#include<stdio.h>
voidmain()
(
charch;
scanf("%c",&ch);
if(ch>='a,&&ch<='z')
ch-=32;
else
if(ch>='A,&&ch<='Z')
ch+=32;
printf(M\n%c\nM,ch);
)
5.設(shè)計一個簡單的計算器程序,能輸入整型運(yùn)算數(shù)和基本運(yùn)算符(+,-,*,/),輸出計算結(jié)果。例如:
輸入2+6,輸出2+6=8。
#include<stdio.h>
main()
(
floata,b,result;
charop;
scanf(,,%f%c%f,,&a,&op,&b);
switch(op)
(
case'':result=a+b;printf(H=%f',result);break;
case'-':result=a-b;printf(,'=%f',result);break;
case'*':result=a*b;printf(M%f,,result);break;
case1/':if(b==0.0)printf(',error!\n,');
result=a/b;
printf(n=%f\result);
default:printf("errorduetotheillegalinput!\n");
第5章
三、編程題
1.編寫程序,顯示100?200之間能被7除余2的所有整數(shù)。
#include"stdio.h"
main()
{inti;
for(i=100;i<=200;i++)
(if(i%7==2)
printf("\t%d\t",i);
1
2.輸入n個整數(shù),求這n個整數(shù)中的最大數(shù)、最小數(shù)和偶數(shù)平均數(shù),并輸出。
#include<stdio.h>
voidmain()
(
inti,n,data,max=O,min=O,even=O,evennumber=O;
printf("Pleaseinputthenumberofdata:");
scanf(”%d”,&n);
printf("Pleaseinputthedata:\n");
scanf("%d”,&data);
max=data;
min=data;
if(data%2==0)
)
even=even+data;
evennumber+4-;
)
for(i=l;i<n;i++)
(
scanf("%d'\&data);
if(data>max)
max=data;
else
if(data<min)
min=data;
if(data%2==0)
(
evcn=even+data;
evennumber4-+;
)
1
printf("Themaxis%d\nTheminis%d\nTheaverageofeven
is%5.2f\n",max,min,(float)(even)/evennumber);
)
3.輸入一串字符,以回車作為結(jié)束標(biāo)志。統(tǒng)計并輸出這串字符中大寫字母、小寫字母和數(shù)字字符的個數(shù)。
#include<stdio.h>
voidmain()
intupper=0,lower=0,number=0;
charletter;
while((letter=getchar())!='\n')
if(letter>='a'&&letter<=,z')lower++;
elseif(letter>-A'&&letter<='Z,)upper++;
elseif(letter>='0'&&letter<='9,)number++;
}
printf("thenumberofuppercaseis:%d\n",upper);
printf("thenumberoflowercaseis:%d\n",lower);
printf("thenumberofnumberis:%d\n",number);
1
4.輸出九九乘法表。
#include<stdio.h>
voidmain()
(
inti,j;
for(i=l;i<=9;i++)
(
for(j=l;j<=i;j++)
printf(',%d*%d=%-3d
printf(n\nn);
)
}
5.編寫程序,輸出3?1000之間全部素數(shù)。
#include<stdio.h>
#include"math,h”
voidmainO
(
intk,data,tag;
for(data=3;data<=1000;data+-i-)〃外層循環(huán),用來產(chǎn)生2?1000之間的整數(shù)
{
tag=0;//tag用于表示數(shù)i是否是素數(shù),沒有判斷前先假定是素數(shù)
for(k=2;k<=sqrt(data)&&!tag;k++)//內(nèi)層循環(huán)用來判斷data是否有約數(shù)
(
if(data%k==0)
tag=l;
)
if(tag==l)printf(繪4d”,data);〃如果i是素數(shù),則輸出
)
)
6.輸入?個三位數(shù),判斷其是否是“水仙花數(shù)”。水仙花數(shù)是指3位數(shù)中的各位數(shù)字的立方和等于這3
位數(shù)本身。如153=l*l*l+5*5*5+3*3*3o
#include,,stdio.h"
voidmain。
(
intS,a,b,c;
printf("請輸入一個3位數(shù):");
scanf(”%d”,&S);
a=S/100;b=S%100/10;c=S%10;
if(a*a*a+b*b*b+c*c*c==S)
printf(n%d是水仙花數(shù)?!?S);
else
printf("%d不是水仙花數(shù)。\n",S);
I
7.編程求Fibonacci數(shù)列的前40個數(shù)。該數(shù)列的生成方法是:F,=l,艮=1,F?=F?-,+F?-2(n>=3)(即從第三個
數(shù)起,每個數(shù)等于前2個數(shù)之和)?
#include"stdio.h"
voidmain()
(
intf[40],n;
fl0]=l;
printf(nFibonacci數(shù)列的前40個數(shù)是:%d\t%d\t",f[O],f[l]);
for(n=2;n<40;n++)
(
f[n]=f[n-l]+f[n-2|;
printf(n%d\t",f[n]);
)
)
8.?個窮人找到一個百萬富翁,給他商討一個換錢計劃如下:我每天給你十萬元,而你第一天只需給我
一元錢,第二天給我二元錢,第三天給我四元錢,……,即我每天都給你十萬元,你每天給我的錢都
是前一天的兩倍,直到滿一個月(30天)。百萬富翁很高興地接受了這個換錢計劃。請編寫程序計算
滿一個月時,窮人給了富翁多少錢,而富翁又給了窮人多少錢。
^include<stdio.h>
voidmain()
(
longpoor=l00000,rich=l,i;
for(i=2;i<=30;i++)
{
poor=poor+100000;
rich=rich*2;
printf("Moneyofpoorgivingrichis%ld\nMoneyofrichgivingpooris%ld\nz,,poor,rich);
9.猴子吃桃問題。猴子第一天摘下若干桃子,立即吃了一半,不過癮又多吃了一個。第二天早上又將剩
下的桃子吃了一半,又多吃了一個。以后的每天早上都是吃了前一天剩下的一半加一個。到第10天早
上時只剩下一個桃子了。編寫程序,求猴子第一天共摘了多少桃子。
/*有一群猴子摘了一堆桃子,他們每天都吃當(dāng)前桃子的一半且再多吃一個*/
/*到了第10天就只余下一個桃子。(C語言實(shí)現(xiàn))*/
/*用多種方法實(shí)現(xiàn)求出原來這群猴子共摘了多少個桃子。*/
/*運(yùn)行環(huán)境:VC++6.0*/
ttinclude"stdio.h"
mainO
(
inti,j.k;/*j是最后的桃子數(shù),k是中間變量,也是桃子總數(shù)*/
j=1;
for(i=9;i>0;i—)
(
k=(j+1)*2;
j=k:
}
printf("機(jī)otal=%d\n”,k);
第6章
三.1.#include<stdio.h>
#definen10
voidmain()
{inta[n],i,countl=0,count2=0,sum=0;floatave;
for(i=0;i<n;i++)
{scanf(u%dH,&a[i]);
sum+=a[i];
if(a[i]>80)
count1+=1;
else
if(a[i]<60)
count2+=l;
)
ave=sum/n;
printf(n%d個優(yōu)秀,%d個不及格,平均分:%個",countl,count2,ave);
)
2.#include<stdio.h>
#definen10
voidmain()
{inta[n],i,j,k,max,min;
for(i=0;i<n;i++)
{scanf(”%d\&a[i]);
if(!i)
{max=min=a[i];
j=k=i;
)
else
{if(max<a[i])
{max=a[i];
j=i;
}
else
if(min>a[i])
{min=a[i];
k=i;
printf("最大值%d在第%d位,最小值%(1在第%d位。H,max,j+l,min,k+l);
)
3.#include<stdio.h>
#include<string.h>
voidmain()
{chars[20],ch;
inti,n;
printfC請輸入字符串:");
gets(s);
n=strlen(s);
for(i=0;i<n/2;i++)
{ch=s[i];
s[i]=s[n-l-i];
s[n-l-i]=ch;
)
prinlf("逆序存放的字符串:”);
puts(s);
)
4.#include<stdio.h>
#defineN10
voidmain()
{inti,j,n,a[N+l];
printf("請輸入%d個由小到大排列的整數(shù):”,N);
for(i=0;i<N;i++)
scanf(H%dn,&a[i]);
prinlf(”請輸入要插入的數(shù):”);
scanf("%dn,&n);
for(i=0;i<N;i++)
if(a[i]>n)
{j=i;
break;
)
if(i==N)
j=i;
for(i=N-l;i>=j;i-)
a[i+l]=a[i];
afj]=n;
printf("插入后的排列:”);
for(i=0;i<=N;i++)
printf(u%dn,a[i]);
)
5.#include<stdio.h>
#defineN3
voidmain()
{inti,j,a[N][N],sum=O;
printff請輸入%d*%d矩陣的元素::N,N);
for(i=0;i<N;i++)
for(j=0;j<N;j++)
{scanf(”%d”,&a口皿);
if(i==j)
sum+=a[i][j];
}
printf("主對角線元素之和:%doM,sum);
}
6.#include<stdio.h>
#include<math.h>
voidmain()
{inti,j,n,k=O,b[300];
for(i=l;i<300;i++)
{n=int(sqrt(i));
for(j=2;j<=n;j++)
{if(i%j==O)
break;
)
ig)
{b[k]=i;
k++;
for(i=0;i<k;i++)
printf("%5d';b[i]);
)
7.#include<stdio.h>
#defineN7
voidmain()
{inti,j,k,a[N],temp;
printf("請輸入%d個整數(shù):H,N);
for(i=0;i<N;i++)
scanf("%dH,&a[i]);
for(i=0;i<N-l;i++)
{k=i;
temp=a[i];
for(j=i+l;j<N;j++)
if(temp>a[j])
{k=j;
temp=a[j];
}
if(k!=i)
{a[k]=a[i];
a[i]=temp;
)
)
printf("排序后的數(shù)列:”);
for(i=0;i<N;i++)
printf(n%3dn,a[i]);
)
8.#include<stdio.h>
voidmain()
{inti=0,count1=0,count2=0,count3=0;
chars[20];
printf(”請輸入字符串:");
gets(s);
while(s[i]!K(r)
{if(s[i]>='a,&&s[i]<=,z,||s[i]>='A,&&s[i]<=,Z')
count1++;
else
if(s[i]>=,O'&&s[i]<=,9')
count2++;
elsecount3++;
i++;
printf("字符%(1個,數(shù)字%d個,其他%d個。[countI,counl2,count3);
9.#include<stdio.h>
#include<string.h>
voidmain()
{chars[20],ch;inti=0;
printf("請輸入字符串:");
gets(s);
while(s[i]!='\0')
{s[i]+=3;
if-
s[i]-=26;
i++;
}
printf("加密后:");
puts(s);
)
10.#include<stdio.h>
#include<string.h>
voidmain()
{charsl[20],s2[20];inti=0j=0;
printf("請輸入字符串1:");
gets(sl);
printf("請輸入字符串2:");
gets(s2);
while(sl[i]!='\0')
i++;
sl[i]=s2[j];
do
{i++;
j++;
sl[i]=s2[j];
)
while(s2[j]!='\0');
printf("連接后:");
puts(sl);
)
11.#include<stdio.h>
#include<string.h>
voidmain()
{charsl[20],s2[20],s3[40];inti=O,j=O,k=O;
printf("請輸入按字母序排列的字符串1:");
gets(sl);
printf("請輸入按字母序排列的字符串2:");
gets(s2);
while(sl[i]!=,\0,&&s2[j]!=,\0,)
{if(sl[i]<s2U])
{s3[k]=sl[i];
k++;i++;
)
else
{s3[k]=s2(j];
k++;j++;
while(sl[i]!='\O')
{s3[k]=sl[i];
k++;i++;
)
while(s2[j]!='\0')
{s3[k]=s2UJ;
k++;j++;
)
s3[k]='\0';
printf("合并后的字符串:");
puts(s3);
)
12.#include<stdio.h>
voidmain()
{inti,j,a[5][5];
for(i=0;i<5;i++)
for(j=4;j>=0;j-)
{ifgi)
a[i]U]=l;
else
a[i][j]=a[i][j+r|+l;
)
for(i=0;i<5;i++)
{for(j=O;j<5;j++)
printf("%3d",a[i][j]);
printf("\n");
)
)
13.#include<stdio.h>
voidmain()
{inti,j,a[8][8];
for(i=0;i<8;i++)
for(j=0;j<8;j++)
{if(j==i||(i+j)==7)
a[i][j]=l;
else
a[i][j]=O;
)
for(i=0;i<8;i++)
{for(j=0;j<8;j++)
printfC%3d*',a[i]U]);
printf('^\n,^);
14.#include<stdio.h>
voidmain()
{inti,j,sum,a[5][3]={20,30,26,30,20,25,25,50,20,46,15,10,35,15,12);
for(i=0;i<5;i++)
{sum=0;
for(j=0;j<3;j++)
sum+=a[il[j];
switch(i)
{caseO:printf("第一個)break;
caseLprintf("第二個)break;
case2:pHntf("第三個)break;
case3:printf("第四個)break;
case4:printf("第五個");break;
)
printf("企業(yè)的總產(chǎn)值是:%d萬元。\n",sum);
)
for(j=0;j<3;j++)
{sum=0;
for(i=0;i<5;i++)
sum+=a[i][j];
switch(j)
{caseO:printf(nA");break;
casel:printf("BM);break;
case2:printf("C");break;
)
printf(”產(chǎn)品的總產(chǎn)值是:%d萬元。\n'\sum);
)
)
15.#include<stdio.h>
#defineN5
voidmain()
{inti,j,a[N][N],b[N];
printf("請輸入%d個數(shù):”,N);
for(i=0;i<N;i++)
scanf("%d",&b[i]);
for(i=0;i<N;i++)
{for(j=i;j<N;j++)
a[i]U]=b[j-i];
for(j=0;j<i;j++)
a[i][j]=a[j][i];
}
for(i=0;i<N;i++)
{for(j=0;j<N;j++)
printf("%3d",a[i][j]);
printf("\n");
16.#include<stdio.h>
voidmain()
{inti=0,j=0,m,n,a[20],b[20];
printf(”請輸入數(shù)組a中的數(shù)據(jù),以0結(jié)束:”);
scanf(n%d",&a[i]);
while(a[i]!=0)
{i++;
scanf("%d",&a[i]);
)
printf("請輸入數(shù)組b中的數(shù)據(jù),以0結(jié)束:”);
scanf("%d”,&b[j]);
while(b[j]!=0)
{j++;
scanf(n%dn,&b|j]);
)
fbr(m=0;m<i;m4-+)
fbr(n=0;n<j;n+4-)
{if(a[m]==b[n])
printf("%3d在a中下標(biāo)為%&在b中下標(biāo)為%&
17.#include<stdio.h>
voidmain()
{inta[20][20],b[20][20],flagl[20][20],flag2[20][20],i,j,s,t,k,l,m,n;
printf("請輸入數(shù)組a的一維長度:”);
scanf("%d",&k);
prinlf("請輸入數(shù)組a的二維長度:”);
scanf("%d",&l);
printf("請輸入數(shù)組a中的數(shù)據(jù):”);
for(i=0;i<k;i++)
for(j=0;j<l;j++)
scanf(M%d",&a[i]|j]);
for(i=0;i<k;i++)
{for(j=0;j<l;j++)
{printf("%3d",a[i][j]);
flagl[i][j]=l;
)
printf("\n");
}
printf("請輸入數(shù)組b的一維長度:");
scanf("%d",&m);
printf("請輸入數(shù)組b的二維長度:");
scanf("%d",&n);
printf("請輸入數(shù)組b中的數(shù)據(jù):");
for(i=0;i<m;i++)
for(j=0;j<n;j++)
scanf("%d",&b[i][j]);
for(i=0;i<m;i++)
{for(j=0;j<n;j++)
{printf("%3d"<b[i][jl);
flag2[i]U]=l;
}
printf("\n");
)
for(i=0;i<k;i++)
for(j=0;j<l;j++)
for(s=0;s<m;s++)
for(t=0;t<n;t++)
if(a[i]U]==b[s][t])
{flagl[i][j]=O;
flag2[s][t]=0;
)
prinlf("只在一個數(shù)組中存在的有:");
for(i=0;i<k;i++)
for(j=0;j<l;j++)
if(flagl[i]U])
printf("%3d",a[i][j]);
for(i=0;i<m;i++)
for(j=0;j<n;j++)
if(flag2[i][j])
printf("%3d",b[i]|j]);
)
18.#include<stdio.h>
voidmain()
{inta[101],i,j,count=0;
for(i=l;i<=100;i++)
a[i]=l;
for(i=2;i<=l00;i++)
for(j=i;j<=100;j++)
if(j%i==0)
a[j]*=-l;
for(i=1;i<=100;i++)
if(a[i]==l)
{count++;
printfC第%d張正面朝上。\n”,i);
)
printf("共有%€1張正面朝上。\n",count);
)
19.#include<stdio.h>
voidmain()
{intnJ,j,k,top,bottomjeft,right,goup,godown,goleft,goright,a[20][20];
i=0;j=0;goright=1;goup=0;godown=0;goleft=0;
printf("請輸入方陣的維數(shù):");
scanf(n%d",&n);
top=-l;bottom=n;left=-l;right=n;
for(k=l;k<=n*n;k++)
{a[i][j]=k;
if(goright)
{if(j<right-l)
j++;
else
{goright=0;
godown=l;
top++;
i++;
continue;
)
)
if(godown)
{if(i<bottom-l)
i++;
else
{godown=0;
goleft=l;
right-;
j--;
continue;
if(goleft)
{if(j>left+l)
j--;
else
{goleft=0;
goup=l;
bottom—;
i-;
continue;
}
}
if(goup)
{if(i>top+l)
i-;
else
{goup=0;
goright=l;
left++;
j++;
continue;
for(i=0;i<n;i++)
{for(j=O;j<n;j++)
printfT%5d”,a[i皿);
printf(H\nu);
)
}
第7章
第8章
三、編程題
1.
#include"stdio.hM
#defineN10
voidmain()
(
inti_val[N];
int*p;
intij,val,k;
for(i=0;i<N;i++)
scanf(”%d”,i_val+i);
p=&i_val[O];
printf("排序前結(jié)果如下:\n");
for(i=0;i<N;i++)
printf("%d\n",*(p+i));
printf("\n");
for(i=0;i<N-l;i++)
(
k=i;
for(j=i+1;j<N;j++)
if(pUl<P[k])
k=j;
if(k!=i)
{
val=p[i];
p[i]=p[k];
p[k]=val;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年稅務(wù)師備考必避坑試題及答案
- 數(shù)據(jù)分析的實(shí)際技巧 試題及答案解析
- 食品安全課程復(fù)習(xí)試題及答案
- 2025企業(yè)租賃合同標(biāo)準(zhǔn)版
- 2025中介服務(wù)傭金合同范本
- 2025年高考考前信息必刷卷02英語(新高考I卷)解析版
- 2025停車場承包協(xié)議合同書
- 生育補(bǔ)貼政策落地方案
- 2025專項(xiàng)許可經(jīng)營合同
- 低空經(jīng)濟(jì)政策紅利與產(chǎn)業(yè)機(jī)遇透析
- 《碳排放管理師》(高級)培訓(xùn)考試模擬題及答案
- 2024年重慶市高考?xì)v史試卷(含答案)
- SH/T 3046-2024 石油化工立式圓筒形鋼制焊接儲罐設(shè)計規(guī)范(正式版)
- 湖南省張家界市慈利縣2023-2024學(xué)年八年級下學(xué)期期中考試物理試題
- 金屬非金屬地下礦山監(jiān)測監(jiān)控系統(tǒng)建設(shè)規(guī)范
- 2024年蘇州市軌道交通集團(tuán)有限公司招聘筆試參考題庫附帶答案詳解
- 新概念英語第2冊課文(完整版)
- 水培吊蘭的養(yǎng)殖方法要領(lǐng)
- 動物的遷徙行為與地球生態(tài)系統(tǒng)
- 【小學(xué)心理健康教育分析國內(nèi)外文獻(xiàn)綜述4100字】
- 2025年日歷日程表含農(nóng)歷可打印
評論
0/150
提交評論