當前位置:首頁 » 編程語言 » c語言程序設計第二版答案

c語言程序設計第二版答案

發布時間: 2022-06-13 16:28:30

① 求c語言程序設計第二版(蘇小紅)課後第五章的本章實驗題答案

《03 00 C語言 全59講 主講-蘇小紅 哈爾濱工業大學》網路網盤資源免費下載

鏈接: https://pan..com/s/1YAxqTBta2f0LJoGW2eytGw

?pwd=riuy 提取碼: riuy

03 00 C語言 全59講 主講-蘇小紅 哈爾濱工業大學|各學科 學習視頻目錄|1-30講|課程目錄.txt|C語言哈工大教材 蘇小紅.jpg|9.flv|8.flv|7.flv|6.flv|5.flv|4.flv|30.flv|3.flv|29.flv|28.flv

② c語言程序設計(第二版)張磊版課後答案

.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

#include <windows.h>
#include <stdio.h>
#include <malloc.h>
#include <winbase.h>
#include <process.h>

void Search()
{
char temp[100];
char buffer[2];
char result[100];
printf("請輸入要查詢的單詞:\n");
scanf("%s",&temp);
buffer[0]=temp[0];
buffer[1]='\0';
int ret=GetPrivateProfileString(buffer,temp,0,result,100,"./date.ini");
if(ret>0)
printf("%s\n\n\n\n\n",result);
else
printf("對不起,沒有您要查找的單詞.\n\n\n\n\n");
}

void InsertItem()
{
char temp[100];
char buffer[2];
char result[100];
printf("請輸入要插入的單詞:\n");
scanf("%s",&temp);
printf("請輸入單詞的解釋:\n");
getchar();
scanf("%s",&result);
buffer[0]=temp[0];
buffer[1]='\0';
int ret=WritePrivateProfileString(buffer,temp,result,"./date.ini");
if(ret=0)
printf("插入失敗。\n\n\n\n\n");
else
printf("插入成功。\n\n\n\n\n");
}

int main(int argc, char* argv[])
{
int index;
main:
printf("**************MENU***************\n\n");
printf(" 1 英譯漢\n");
// printf("2 漢譯英\n");
printf(" 2 插入新的詞條\n");
// printf(" 3 刪除已有詞條\n");
printf(" 3 清空屏幕\n");
printf(" 4 退出\n\n");
printf("**********************************\n");
do{
printf("請選擇操作(1~4):\n");
scanf("%d",&index); /*輸入選擇項*/
}while(index<0||index>5); /*選擇項不在0~4之間重輸*/
switch(index)
{
case 1:
Search();
goto main;
break;
case 2:
InsertItem();
goto main;
break;
case 3:
system("cls");
goto main;
break;
case 4:
return 0;
break;
default:
break;
}
return 0;
}

輸出:

**************MENU***************

1 英譯漢
2 插入新的詞條
3 清空屏幕
4 退出

**********************************
請選擇操作(1~4):
1
請輸入要查詢的單詞:
bad
adj. 劣質的,有害的,壞的,不利的,不健康的,嚴重的

**************MENU***************

1 英譯漢
2 插入新的詞條
3 清空屏幕
4 退出

**********************************
請選擇操作(1~4):
2
請輸入要插入的單詞:
cat
請輸入單詞的解釋:

插入成功。

**************MENU***************

1 英譯漢
2 插入新的詞條
3 清空屏幕
4 退出

**********************************
請選擇操作(1~4):
1
請輸入要查詢的單詞:
cat


**************MENU***************

1 英譯漢
2 插入新的詞條
3 清空屏幕
4 退出

**********************************
請選擇操作(1~4):
4
Press any key to continue
滿意請採納。

③ c語言程序設計答案 清華大學出版社第二版

大學學習資料免費下載網 有(下載不用積分點數之類)

點擊「各版本教材課後答案與習題詳解」里的「C語言」就可以下載啦!!!

內含:

譚浩強C語言程序設計習題參考解答
和配套 C程序設計題解與上機指導 答案

參考資料:大學學習資料免費下載網(哲學、法學、文學、理學、工學、農學、醫學、管理學等考研資料、等級考試、課後答案等資料全集)

④ c語言程序設計能力教程答案

1 【C語言】《C語言程序設計教程(第二版)》習題答案

說 明
1. 本文所指的《C語言程序設計教程(第二版)》是李鳳霞主編、北京理
工大學出版社出版的,綠皮。

2 第1章 程序設計基礎知識
一、單項選擇題(第23頁)
1-4.CBBC 5-8.DACA

二、填空題(第24頁)
1.判斷條件 2.面向過程編程 3.結構化 4.程序 5.面向對象的程序設計語言 7.有窮性 8.直到型循環 9.演算法 10.可讀性 11.模塊化 12.對問題的分析和模塊的劃分

三、應用題(第24頁)
2.源程序:
main()
{int i,j,k; /* i:公雞數,j:母雞數,k:小雞數的1/3 */ <br>printf("cock hen chick\n"); <br>for(i=1;i<=20;i++) <br>for(j=1;j<=33;j++) <br>for(k=1;k<=33;k++) <br>if (i+j+k*3==100&&i*5+j*3+k==100) <br>printf(" %d %d %d\n",i,j,k*3);}
執行結果:
cock hen chick
4 18 78
8 11 81
12 4 84
3.現計算斐波那契數列的前20項。
遞推法 源程序:
main()
{long a,b;int i; <br>a=b=1; <br>for(i=1;i<=10;i++) /*要計算前30項,把10改為15。*/ <br>{printf("%8ld%8ld",a,b); <br>a=a+b;b=b+a;}}
遞歸法 源程序:
main()
{int i; <br>for(i=0;i<=19;i++) <br>printf("%8d",fib(i));}
fib(int i)
{return(i<=1?1:fib(i-1)+fib(i-2));}
執行結果:
1 1 2 3 5 8 13 21 34 55
89 144 233 377 610 987 1597 2584 4181 6765
4.源程序:
#include "math.h";
main()
{double x,x0,deltax; <br>x=1.5; <br>do {x0=pow(x+1,1./3); <br>deltax=fabs(x0-x); <br>x=x0; <br>}while(deltax>1e-12);
printf("%.10f\n",x);}
執行結果:
1.3247179572
5.源程序略。(分子、分母均構成斐波那契數列)
結果是32.66026079864
6.源程序:
main()
{int a,b,c,m; <br>printf("Please input a,b and c:"); <br>scanf("%d %d %d",&a,&b,&c); <br>if(a<b){m=a;a=b;b=m;}
if(a<c){m=a;a=c;c=m;}
if(b<c){m=b;b=c;c=m;}
printf("%d %d %d\n",a,b,c);}
執行結果:
Please input a,b and c:123 456 789
789 456 123
7.源程序:
main()
{int a; <br>scanf("%d",&a); <br>printf(a%21==0?"Yes":"No");}
執行結果:
42
Yes

3 第2章 C語言概述
一、單項選擇題(第34頁)
1-4.BDCB 5-8.AABC

二、填空題(第35頁)
1.主 2.C編譯系統 3.函數 函數 4.輸入輸出 5.頭 6. .OBJ 7.庫函數 8.文本

三、應用題(第36頁)
5.sizeof是關鍵字,stru、_aoto、file、m_i_n、hello、ABC、SIN90、x1234、until、cos2x、s_3是標識符。
8.源程序:
main()
{int a,b,c; <br>scanf("%d %d",&a,&b); <br>c=a;a=b;b=c; <br>printf("%d %d",a,b);}
執行結果:
12 34
34 12

4 第3章 數據類型與運算規則
一、單項選擇題(第75頁)
1-5.DBACC 6-10.DBDBC 11-15.ADCCC 16-20.CBCCD 21-25.ADDBC 26-27.AB

二、填空題(第77頁)
1.補碼 2.±(10^-308~10^308) 3.int(整數) 4.單目 自右相左 5.函數調用 6.a或b 7.1 8.65,89

三、應用題(第78頁)
1.10 9
2.執行結果:
11
0
0
12
1

5 第4章 順序結構程序設計
一、單項選擇題(第90頁)
1-5.DCDAD 6-10.BACBB

二、填空題(第91頁)
1.一 ;2. 5.169000 3.(1)-2002500 (2)I=-200,j=2500 (3)i=-200
j=2500 4.a=98,b=765.000000,c=4321.000000 5.略 6.0,0,3 7.3 8.scanf("%lf%lf%lf",&a,&b,&c); 9. 13 13.000000,13.000000 10.a=a^c;c=c^a;a=a^c;(這種演算法不破壞b的值,也不用定義中間變數。)

三、編程題(第92頁)
1.仿照教材第27頁例2-1。
2.源程序:
main()
{int h,m; <br>scanf("%d:%d",&h,&m); <br>printf("%d\n",h*60+m);}
執行結果:
9:23
563
3.源程序:
main()
{int a[]={-10,0,15,34},i;
for(i=0;i<=3;i++)
printf("%d\370C=%g\370F\t",a[i],a[i]*1.8+32);}
執行結果:
-10℃=14°F 0℃=32°F 15℃=59°F 34℃=93.2°F
4.源程序:
main()
{double pi=3.14159265358979,r=5; <br>printf("r=%lg A=%.10lf S=%.10lf\n",r,2*pi*r,pi*pi*r);}
執行結果:
r=5 A=31.4159265359 S=49.3480220054
5.源程序:
#include "math.h";
main()
{double a,b,c; <br>scanf("%lf%lf%lf",&a,&b,&c); <br>if (a+b>c&&a+c>b&&b+c>a) <br>{double s=(a+b+c)/2; <br>printf("SS=%.10lf\n",sqrt(s*(s-a)*(s-b)*(s-c)));}
else printf("Data error!");}
執行結果:
4 5 6
SS=9.9215674165
6.源程序:
main()
{int a=3,b=4,c=5;float d=1.2,e=2.23,f=-43.56; <br>printf("a=%3d,b=%-4d,c=**%d\nd=%g\ne=%6.2f\nf=%-10.4f**\n",a,b,c,d,e,f);}
7.源程序:
main()
{int a,b,c,m; <br>scanf("%d %d %d",&a,&b,&c); <br>m=a;a=b;b=c;c=m; <br>printf("%d %d %d\n",a,b,c);}
執行結果:
5 6 7
6 7 5
8.源程序:
main()
{int a,b,c; <br>scanf("%d %d %d",&a,&b,&c); <br>printf("average of %d,%d and %d is %.2f\n",a,b,c,(a+b+c)/3.); <br>執行結果: <br>6 7 9 <br>average of 6,7 and 9 is 7.33 <br>9.不能。修改後的源程序如下: <br>main() <br>{int a,b,c,x,y; <br>scanf("%d %d %d",&a,&b,&c); <br>x=a*b;y=x*c; <br>printf("a=%d,b=%d,c=%d\n",a,b,c); <br>printf("x=%d,y=%d\n",x,y);}

6 第5章 選擇結構程序設計
一、單項選擇題(第113頁)
1-4.DCBB 5-8.DABD

二、填空題(第115頁)
1.非0 0 2.k==0
3.if (abs(x)>4) printf("%d",x);else printf("error!");
4.if((x>=1&&x<=10||x>=200&&x<=210)&&x&1)printf("%d",x);
5.k=1 (原題最後一行漏了個d,如果認為原題正確,則輸出k=%。)
6. 8! Right!11 7.$$$a=0 8.a=2,b=1

三、編程題(第116頁)
1.有錯。正確的程序如下:
main()
{int a,b,c; <br>scanf("%d,%d,%d",&a,&b,&c); <br>printf("min=%d\n",a>b?b>c?c:b:a>c?c:a);}
2.源程序:
main()
{unsigned long a; <br>scanf("%ld",&a); <br>for(;a;printf("%d",a%10),a/=10);}
執行結果:
12345
54321
3.(1)源程序:
main()
{int x,y; <br>scanf("%d",&x); <br>if (x>-5&&x<0)y=x; <br>if (x>=0&&x<5)y=x-1; <br>if (x>=5&&x<10)y=x+1; <br>printf("%d\n",y);}
(2)源程序:
main()
{int x,y; <br>scanf("%d",&x); <br>if(x<10) if(x>-5) if(x>=0) if(x>=5)y=x+1; <br>else y=x-1; else y=x; <br>printf("%d\n",y);}
(3)源程序:
main()
{int x,y; <br>scanf("%d",&x); <br>if(x<10) if(x>=5)y=x+1; <br>else if(x>=0)y=x-1; <br>else if(x>-5)y=x; <br>printf("%d\n",y);}
(4)源程序:
main()
{int x,y; <br>scanf("%d",&x); <br>switch(x/5) <br>{case -1:if(x!=-5)y=x;break; <br>case 0:y=x-1;break; <br>case 1:y=x+1;}
printf("%d\n",y);}
4.本題為了避免考慮每月的天數及閏年等問題,故採用面向對象的程序設計。
現給出Delphi源程序和C++ Builder源程序。
Delphi源程序:
procere TForm1.Button1Click(Sender: TObject);
begin
edit3.Text:=format('%.0f天',[strtodate(edit2.text) -strtodate(edit1.text)]);
end;
procere TForm1.FormCreate(Sender: TObject);
begin
Edit2.Text:=datetostr(now);
button1click(form1)
end;
C++ Builder源程序:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Edit3->Text=IntToStr(StrToDate(Edit2->Text)-StrToDate(Edit1->Text))+"天";
}
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Edit2->Text=DateToStr(Now());
Button1Click(Form1);
}
執行結果:(運行於Windows下) http://img378.photo.163.com/nxgt/41463572/1219713927.jpg

5.源程序:
main()
{unsigned a,b,c; <br>printf("請輸入三個整數:"); <br>scanf("%d %d %d",&a,&b,&c); <br>if(a&&b&&c&&a==b&&a==c)printf("構成等邊三角形\n"); <br>else if(a+b>c&&a+c>b&&b+c>a) <br>if(a==b||a==c||b==c)printf("構成等腰三角形\n"); <br>else printf("構成一般三角形\n"); <br>else printf("不能構成三角形\n");}
執行結果:
請輸入三個整數:5 6 5
構成等腰三角形
6.源程序:
main()
{int x,y; <br>scanf("%d",&x); <br>if(x<20)y=1; <br>else switch(x/60) <br>{case 0:y=x/10;break; <br>default:y=6;}
printf("x=%d,y=%d\n",x,y);}
7.源程序:
main()
{unsigned m;float n; <br>scanf("%d",&m); <br>if(m<100)n=0; <br>else if(m>600)n=0.06; <br>else n=(m/100+0.5)/100; <br>printf("%d %.2f %.2f\n",m,m*(1-n),m*n);}
執行結果:
450
450 429.75 20.25
8. 2171天(起始日期和終止日期均算在內)
本題可利用第4小題編好的程序進行計算。把起始日期和終止日期分別打入「生日」和「今日」欄內,單擊「實足年齡」按鈕,將所得到的天數再加上1天即可。
9.源程序:
#include "math.h";
main()
{unsigned long i; <br>scanf("%ld",&i); <br>printf("%ld %d\n",i%10,(int)log10(i)+1);}
執行結果:
99887
7 5
10.源程序:
main()
{unsigned long i;unsigned j[10],m=0; <br>scanf("%ld",&i); <br>for(;i;){j[m++]=(i+2)%10;i/=10;}
for(;m;m--)i=i*10+j[m-1];
printf("%ld\n",i);}
執行結果:
6987
8109
(註:要加密的數值不能是0或以0開頭。如果要以0開頭需用字元串而不能是整數。)

7 第6章 循環結構程序設計
一、單項選擇題(第142頁)
1-4.BCCB 5-8.CBCA

二、填空題(第143頁)
1.原題可能有誤。如無誤,是死循環 2.原題有誤。如果把b=1後面的逗號改為分號,則結果是8。 3.20 4.11 5. 2.400000 6.*#*#*#$ 7.8 5 2 8.①d=1.0 ②++k ③k<=n 9.①x>=0 ②x<amin

三、編程題(第145頁)
1. 源程序:
main()
{int i=1,sum=i; <br>while(i<101){sum+=i=-i-2;sum+=i=-i+2;}
printf("%d\n",sum);}
執行結果:
51
2.源程序:
main()
{double p=0,n=0,f;int i; <br>for(i=1;i<=10;i++) <br>{scanf("%lf",&f); <br>if (f>0)p+=f; else n+=f;}
printf("%lf %lf %lf\n",p,n,p+n);}
3.源程序:
main()
{unsigned a; <br>scanf("%ld",&a); <br>for (;a;printf("%d,",a%10),a/=10); <br>printf("\b \n");}
執行結果:
23456
6,5,4,3,2
4.源程序:
main()
{unsigned long a,b,c,i; <br>scanf("%ld%ld",&a,&b); <br>c=a%1000; <br>for(i=1;i<b;i++)c=c*a%1000; <br>if(c<100)printf("0"); <br>if(c<10)printf("0"); <br>printf("%ld\n",c);}
執行結果:
129 57
009
5.略
6.原題提供的計算e的公式有誤(前面漏了一項1)。正確的公式是e= 1 + 1 + 1/2! + 1/3! + … + 1/n! + …
(1)源程序:
main()
{double e=1,f=1;int n; <br>for(n=1;n<=20;n++){f/=n;e+=f;}
printf("e=%.14lf\n",e);}
執行結果:
e=2.71828182845905
(2)源程序:
main()
{double e=1,f=1;int n; <br>for(n=1;f>1e-4;n++){f/=n;e+=f;}
printf("e=%.4f\n",e);}
執行結果:
e=2.7183
7.源程序:
main()
{unsigned long a=0,b=1,c=0;int i,d; <br>scanf("%d",&d); <br>for (i=1;i<=(d+2)/3;i++) <br>printf("%10ld%10ld%10ld",a,b,(a+=b+c,b+=c+a,c+=a+b));}
本題還可以用遞歸演算法(效率很低),源程序如下:
unsigned long fun(int i)
{return i<=3?i:fun(i-1)+fun(i-2)+fun(i-3);}
main()
{int i,d; scanf("%d",&d); <br>for(i=1;i<=d;i++) <br>printf("%10ld",fun(i));}
執行結果:
15
1 2 3 6 11 20 37 68
125 230 423 778 1431 2632 4841
8.源程序:
main()
{int i; <br>for(i=1010;i<=9876;i+=2) <br>if(i/100%11&&i%100%11&&i/10%100%11&&i/1000!=i%10&&i/1000!=i/10%10&&i/100%10!=i%10)printf(" %d",i);}
執行結果:
1024 1026 1028 1032 1034 1036 …… …… 9874 9876
9.源程序:
main()
{int i,j,k; <br>printf("apple watermelon pear\n"); <br>for(i=1;i<=100;i++) <br>for(j=1;j<=10;j++) <br>if((k=100-i-j)*2==400-i*4-j*40) <br>printf("%4d%7d%9d\n",i,j,k);}
執行結果:
apple watermelon pear
5 5 90
24 4 72
43 3 54
62 2 36
81 1 18
10.源程序:
#include "stdio.h";
#define N 4 /* N為階數,可以改為其他正整數 */
main()
{int m=N*2,i,j; <br>for(i=1;i<m;printf("\n"),i++) <br>for(j=1;j<m; <br>putchar(N-abs(i-N)<=abs(j++-N)?' ':'*'));}
如果把N值改為5,則執行結果如下:
*
***
*****
*******
*********
*******
*****
***
*

⑤ 請問誰有c語言程序設計(第二版)課後習題答案,譚浩強的

4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1='a',c2='b',想得到以下的輸出格式和結果,請寫出程序(包括定義變數類型和設計輸出)。要求輸出的結果如下:
a=凵3凵凵b=凵4凵凵c=凵5
x=1.200000,y=2.400000,z=-3.600000
x+y=凵3.60凵凵y+z=-1.20凵凵z+x=-2.40
c1='a'凵or凵97(ASCII)
c2='B'凵or凵98(ASCII)

解:
#include <stdio.h>
main()
{ int a,b,c;
long int u,n;
float x,y,z;
char c1,c2;
a=3;b=4;c=5;
x=1.2;y=2.4;z=-3.6;
u=51274;n=128765;
c1='a';c2='b';
printf("\n");
printf("a=%2d b=%2d c=%2d\n",a,b,c);
printf("x=%8.6f,y=%8.6f,z=%9.6f\n",x,y,z);
printf("x+y=%5.2f y+z=%5.2f z+x=%5.2f\n",x+y,y+z,z+x);
printf("u=%6ld n=%9ld\n",u,n);
printf("c1='%c' or %d(ASCII)\n",c1,c1);
printf("c2='%c' or %d(ASCII)\n",c2-32,c2);
}

4.5 請寫出下面程序的輸出結果:

#include <stdio.h>
main()
{ int a=5,b=7;
float x=67.8564,y=-789.124;
char c='A';
long n=1234567;
unsigned u=65535;
printf("%d%d\n",a,b);
printf("%3d%3d\n",a,b);
printf("%f,%f\n",x,y);
printf("%-10f,%-10f\n",x,y);
printf("%8.2f,%8.2f,%.4f,%.4f,%3f,%3f\n",x,y,x,y,x,y);
printf("%e,%10.2e\n",x,y);
printf("%c,%d,%o,%x\n",c,c,c,c);
printf("%ld,%lo,%x\n",n,n,n);
printf("%u,%o,%x,%d\n",u,u,u,u);
printf("%s,%5.3s\n","COMPUTER","COMPUTER");
}

運行結果:(在TC2.0中)
57
凵凵5凵凵7
67.856400,-789.124023
67.856400凵,-789.124023
凵凵凵67.86,凵-789.12,67.8564,-789.1240,67.856400,-789.124023
6.785640e+Ol,凵凵-7.9e+02
A,65,10l,4l
1234567,4553207,d687
65535,177777,ffff,-1
COMPUTER,凵凵COM

4.6 用下面的scanf函數輸入數據,使a=3,b=7,x=8.5,y=71.82,c1='A',c2='a'。問在鍵盤上如何輸入?

#include <stdio.h>
main()
{ int a,b;
float x,y;
char c1,c2;
scanf("a=%d凵b=%d",&a,&b);
scanf("%f凵%e",&x,&y);
scanf("凵%c凵%c",&c1,&c2);
printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c\n,a,b,x,y,c1,c2);
}

解:可按如下方式在鍵盤上輸入:
a=3凵b=7↙
8.5凵71.82↙
A凵a↙
輸出為:
a=3,b=7,x=8.500000,y=71.820000,cl=A,c2=a

請注意:在第三個scanf函數雙引號中第一個字元為空格字元。如果沒有這個空格字元,而寫成:
scanf("%c%c,&c1,&c2);
按以上的輸入,輸出就會變成以下兩行:
a=3,b=7,x=8.500000,y=71.820000,cl=
,c2=A
這是因為在輸入完第二行數據後按的回車鍵被作為一個字元送到內存輸入緩沖區中,因此第三個scanf函數中的第一個變數c1讀人了回車符(實際上是回車符的ASCII碼)。第三行輸入的第一個字元A被c2讀取,所以在執行printf函數輸出cl時,就輸出一個回車符,輸出c2時就輸出字元A。我們在程序第三個scanf函數雙引號中第一個字元處放了一個空格字元,這樣第二行末尾輸入的回車符就不會輸入給c1,而是與該空格字元對應,第三行輸入的第一個字元A就被cl讀取。也可以不在scanf函數中加空格,而在第三個函數前加一個getchar函數:getchar(); 用它將前面的回車符「吃掉」。
在一個函數中如果有幾個scanf函數,在輸人數據時往往會出現一些想像不到的情況(例如前面碰到的情況),其中一個重要的原因就是由回車符引起的。C語言很靈活,書上不可能把一切細節都講到,讀者在遇到類似情況時,上機多試驗一下就可以找出規律來。

4.7 用下面的scanf函數輸入數據,使a=10,b=20,c1='A',c2='a',x=1.5,y=-3.75,z=67.8,請問在鍵盤上如何輸入數據?
scanf("%5d%5d%c%c%f%f%*f,%f",&a,&b,&c1,&c2,&x,&y,&z);

解:
#include <stdio.h>
main()
{
int a,b;
float x,y,z;
char cl,c2;
scanf("%5d%5d%c%c%f%f%*f,%f",&a,&b,&cl,&c2,&x,&y,&x);
printf("a=%d,b=%d,c1=%c,c2=%c,x=%6.2f,y=%6.2f,z=%6.2f\n",a,b,c1,c2,x,y,z);
}

運行情況如下:
凵凵凵10凵凵凵20Aa1.5凵-3.75凵1.5,67.8↙ (此行為輸人的數據)
a=10,b=20,cl=A,c2=a,x=凵凵1.50,y=凵-3.75,x=凵67.80 (此行為輸出)

說明:按%5d格式的要求輸入a與b時,要先鍵入三個空格,然後再鍵人10與20。%*f是用來禁止賦值的。在輸入時,對應於%*f的地方,隨意打人了一個數如1.5,該值不會賦給任何變數。

4.8 設圓半徑r=1.5,圓柱高h=3,求圓周長、圓面積、圓球表面積、圓球體積、圓柱體積。用scanf輸入數據,輸出計算結果,輸出時要求有文字說明,取小數點後2位數字。請編程序。

解:
#include <stdio.h>
main()
{ float pi,h,r,l,s,sq,vq,vz;
pi=3.1415926;
printf("請輸入圓半徑r,圓柱高h:\n");
scanf("%f,%f",&r,&h);
l=2*pi*r;
s=r*r*pi;
sq=4*pi*r*r;
vq=3.0/4.0*pi*r*r*r;
vz=pi*r*r*h;
printf("圓周長為:1=%6.2f\n",l);
printf("圓面積為:s=%6.2f\n",s);
printf("圓球表面積為:sq=%6.2f\n",sq);
printf("圓球體積為:sv=%6.2f\n",vq);
printf("圓柱體積為:sz=%6.2f\n",vz);
}

運行結果:
請輸入圓半徑r,圓柱高h;
1.5,3↙
圓周長為:l= 9.42
圓面積為:s= 7.07
圓球表面積為:sq= 28.27
圓球體積為:sv= 7.95
圓柱體積為:sz= 21.21

4.9 輸入一個華氏溫度,要求輸出攝氏溫度。公式為c=5(F-32)/9,輸出要有文字說明,取2位小數。

解:
#include <stdio.h>
main()
{ float c,f;
printf("請輸入一個華氏溫度:\n");
scanf("%f",&f);
c=(5.0/9.0)*(f-32); /*注意5和9要用實型表示,否則5/9的值為0*/
printf("攝氏溫度為:%5.2f\n",c);
}

運行結果:
請輸入一個華氏溫度:
78
攝氏溫度為:25.56

4.10 編程序,用getchar函數讀入兩個字元給cl、c2,然後分別用putchar函數和printf函數輸出這兩個字元。並思考以下問題:(1)變數c1、c2應定義為字元型或整型?抑或二者皆可?(2)要求輸出c1和c2值的ASCII碼,應如何處理?用putchar函數還是printf函數?(3)整型變數與字元變數是否在任何情況下都可以互相代替?如char"c1,c2;" 與"int cl,c2;" 是否無條件地等價?

解:
#include <stdio.h>
main()
{ char c1,c2;
printf("請輸入兩個字元c1,c2:\n");
c1=getchar();
c2=getchar();
printf("用putchar語句輸出結果為:\n");
putchar(c1);
putchar(c2);
printf("\n");
printf("用printf語句輸出結果為:\n");
printf("%c,%c\n",c1,c2);
}

運行結果:
請輸入兩個字元c1,c2:
ab↙
用putchar語句輸出結果為:
ab↙
用printf語句輸出結果為:
a,b

請注意連續用兩個getchar函數時怎樣輸入字元。不應當用以下方法輸入:
a↙
b↙
因為第一行將a和回車符輸入到內存的輸入緩沖區,因此c1得到a,c2得到一個回車符。在輸出c2時就會產生一個回車換行,而不會輸出任何可顯示的字元。在實際操作時,只要輸入了"a↙"後,屏幕顯示馬上從用戶屏切換到TC窗口,程序接著執行下去。因為系統認為用戶已輸入了兩個字元,所以我們連續輸入ab兩個字元然後再按回車鍵,就保證了c1和c2分別得到字元a和b。

回答思考問題:
(1) c1和c2可以定義為字元型或整型,二者皆可。
(2) 在printf函數中用%d格式符輸出,即:
printf("%d,%d\n",c1,c2);
(3) 字元變數在計算機內佔一個位元組,而整型變數占兩個位元組,因此整型變數在可輸出字元的范圍內(ASCII碼為0~255之間的字元)是可以與字元數據互相轉換的。如果整數在此范圍外,則不能代替,請分析以下三個程序。

程序1:(4-10-1.c)
#include <stdio.h>
main()
{ int c1,c2; /*定義為整型*/
printf("請輸入兩個整數c1,c2:\n");
scanf("%d,%d",&c1,&c2);
printf("按字元輸出結果為:\n");
printf("%c,%c\n",c1,c2);
printf("按ASCII碼輸出結果為:\n");
printf("%d,%d\n",c1,c2);
}

運行結果:
請輸入兩個整數c1,c2:
97,98↙
按字元輸出結果為:
a,b
按ASCII碼輸出結果為:
97,98
程序2:(4-10-2.c)
#include <stdio.h>
main()
{ char c1,c2; /* 定義為字元型*/
int i1,i2; /* 定義為整型 */
printf("請輸入兩個字元c1,c2:\n");
scanf("%c,%c",&c1,&c2);
i1=c1; /* 將字元型賦值給整型變數*/
i2=c2;
printf("按字元輸出結果為:\n");
printf("%c,%c\n",i1,i2); /* 將整型變數按字元輸出*/
printf("按整數輸出結果為:\n");
printf("%d,%d\n",c1,c2); /* 將字元變數按整型輸出*/
}

運行結果:
請輸入兩個字元c1,c2:
a,b↙
按字元輸出結果為:
a,b
按整數輸出結果為:
97,98
程序3:(4-10-3.c)
#include <stdio.h>
main()
{ char c1,c2;/* 定義為字元型 */
char i1,i2;/* 定義為整型 */
printf("請輸入兩個整數i1,i2:\n");
scanf("%c,%c",&i1,&i2);
c1=i1; /* 將整數賦給字元變數 */
c2=i2;
printf("按字元輸出結果為:\n");
printf("%c,%c\n",c1,c2);
printf("按整數輸出結果為:\n");
printf("%d,%d\n",c1,c2);
}

運行結果:
請輸入兩個整數i1,i2:
289,330↙
按字元輸出結果為:
!,J
按整數輸出結果為:
33,74

請注意c1和c2是字元變數,只佔一個位元組,只能存放0~255范圍內的整數,而現在輸入給i1和i2的值已超過0~255的范圍,所以只將i1和i2在內存中兩個位元組的低8位賦給c1和c2。可以看到,289-255=33,330-255=74;而與ASCII碼33和74相應的字元為"!"
另外,團IDC網上有許多產品團購,便宜有口碑

⑥ 這本書的答案《c語言程序設計》(第二版)賈宗璞 許合利

http://wenku..com/link?url=_wc1f3lf-K6bsNryTv13bhU-
這是網路文庫的答案鏈接~~~

⑦ 大一C語言問題(C語言程序設計 李鳳霞 第二版)

1. D, 位元組對齊 char 也是2
2. A B的第三個參數錯;C常量不能做為左值;D不知道了
3. A
4. A
5. C
6. D
7. C
8. D
9. C
10.B
11.C
12.B 用追加方式不可讀。
13.B

⑧ 方風波C語言程序設計第二版第六章課後題答案

我也是找來給你的,
#include<stdio.h>

void main() {
int n;
char M;

do {
printf("Please input the number of the month:\n");
scanf("%d", &n);

switch (n) {
case 1:
printf("您輸入的月份的英文名稱是:January\n");
break;
case 2:
printf("您輸入的月份的英文名稱是:February\n");
break;
case 3:
printf("您輸入的月份的英文名稱是:March\n");
break;
case 4:
printf("您輸入的月份的英文名稱是:April\n");
break;
case 5:
printf("您輸入的月份的英文名稱是:May\n");
break;
case 6:
printf("您輸入的月份的英文名稱是:June\n");
break;
case 7:
printf("您輸入的月份的英文名稱是:July\n");
break;
case 8:
printf("您輸入的月份的英文名稱是:Augest\n");
break;
case 9:
printf("您輸入的月份的英文名稱是:September\n");
break;
case 10:
printf("您輸入的月份的英文名稱是:October\n");
break;
case 11:
printf("您輸入的月份的英文名稱是:November\n");
break;
case 12:
printf("您輸入的月份的英文名稱是:December\n");
break;
}
printf("Do you want to continue? Input Y or not\n");
scanf(" %c", &M);
} while (M == 'Y');
}

⑨ c語言程序設計基礎第二版答案 人民郵電出版社

語言視頻教程 譚浩強編,曾怡教授講解
C語言程序設計視頻教程(曾怡)
地區:大陸
語言:普通話
簡介:
C程序設計視頻教程(曾怡):本套視頻教程由曾怡副教授講解,使用教材為:《C程序設計》 譚浩強 清華大學出版社出版。是難得的C語言學習視頻教程。全程共30講,每講45分鍾左右,CSF視頻格式。講課內容如下:

第一講 第一章 C語言概述
第二講 第二章 程序的靈魂—演算法
第三講 第三章 數據類型、運算符與表達式
第四講 第三章 數據類型、運算符與表達式
第五講 第三章 數據類型、運算符與表達式
第六講 第三章 數據類型、運算符與表達式
第四章 最簡單的C程序設計—順序程序設計
第七講 第四章 最簡單的C程序設計—順序程序設計
第八講 第四章 最簡單的C程序設計—順序程序設計
第九講 第五章 選擇結構的程序設計
第十講 第五章 選擇結構的程序設計
第十一講 第五章 選擇結構的程序設計
第十二講 第六章 循環結構程序設計
第十三講 第六章 循環結構程序設計
第十四講 第六章 循環結構程序設計
第十五講 第六章 循環結構程序設計
第七章 數組
第十六講 第七章 數組
第十七講 第七章 數組
第十八講 第七章 數組
第十九講 第七章 數組
第二十講 第七章 數組
第八章 函數
第二十一講 第八章 函數
第二十二講 第八章 函數
第二十三講 第八章 函數
第二十四講 第十章 指針
第二十五講 第十章 指針
第二十六講 第十章 指針
第二十七講 第十章 指針
第十一章 結構體
第二十八講 第十一章 結構體
復習總結第一講
復習總結第二講

⑩ c語言程序設計(梁海英)第二版課後答案詳解,求哪位大蝦幫幫忙,最好有詳解,我是初學者,看答案推論,

if (entity != null) {
final InputStream instream = entity.getContent();
try {
final StringBuilder sb = new StringBuilder();
final char[] tmp = new char[1024];
final Reader reader = new InputStreamReader(instream,encoding);
int l;
while ((l = reader.read(tmp)) != -1) {
sb.append(tmp, 0, l);
}
body = sb.toString();
} finally {
instream.close();
EntityUtils.consume(entity);
}

熱點內容
javatomcat伺服器搭建伺服器 發布:2025-02-07 10:55:22 瀏覽:621
vcenter存儲器集群 發布:2025-02-07 10:54:31 瀏覽:582
咖啡的腳本 發布:2025-02-07 10:46:18 瀏覽:519
nsftp速度 發布:2025-02-07 10:30:58 瀏覽:430
存儲過程ifor 發布:2025-02-07 10:25:28 瀏覽:432
命令行執行oracle腳本文件命令行 發布:2025-02-07 10:14:49 瀏覽:95
ibook安卓怎麼下 發布:2025-02-07 10:12:13 瀏覽:692
銀行卡沒有密碼怎麼辦啊 發布:2025-02-07 10:08:13 瀏覽:30
游戲庫源碼 發布:2025-02-07 09:49:15 瀏覽:53
享宇錢包上傳不了照片 發布:2025-02-07 09:48:32 瀏覽:632